Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Von DBGrid auf die aktuelle Zeile in der Query schliessen (https://www.delphipraxis.net/125543-von-dbgrid-auf-die-aktuelle-zeile-der-query-schliessen.html)

HolgerCW 8. Dez 2008 10:14

Datenbank: ORACLE • Version: 10 • Zugriff über: BDE

Von DBGrid auf die aktuelle Zeile in der Query schliessen
 
Hallo zusammen,

wie kann ich von der aktuellen Zeile in einem DBGrid auf die Zeile in der Query schliessen, um die Spalte abzufragen ? Möchte ohne Fields arbeiten, da ich dem Anweder auch die Möglichkeit gebe die Reihenfolge der Spalten im DBGrid zu ändern.

Folgender Code muss demnach ergänzt werden:

Delphi-Quellcode:
if (DBGrid.SelectedRows.Count > 0) then
begin

 With DBGrid.DataSource.DataSet do
 begin

  for i := 0 to DBGrid.SelectedRows.Count - 1 do
  begin

   GotoBookmark(Pointer(DBGrid.SelectedRows.Items[i]));

   If (Fields[6].AsString = '') then
   begin
   
    ...

   end;

  end;
 
 end;

end;
Die unteren If-Abfrage müssten demnach gegen die Query-Abfrage ausgetauscht werden. Nur wie ?

Gruss

Holger

Sharky 8. Dez 2008 10:15

Re: Von DBGrid auf die aktuelle Zeile in der Query schliesse
 
Hai Holger,

die aktuelle Zeile eines DBGrid ist doch immer die Zeile auf der sich der "Cursor" des verbunden DataSets befindet.

HolgerCW 8. Dez 2008 10:33

Re: Von DBGrid auf die aktuelle Zeile in der Query schliesse
 
Alles klar,

dann habe ich es nun so gemacht:

Delphi-Quellcode:
If (FieldbyName('SPALTE').AsString = '') then
begin

 ...

end;
Gruss

Holger

fragile 8. Dez 2008 11:01

Re: Von DBGrid auf die aktuelle Zeile in der Query schliesse
 
@Sharky : Ist das nicht nur der Fall, wenn ich mit einem Server-Cursor arbeite ? Bei einem Clientseitigen Cursor kann ich ja die vom Grid repräsentierte (Memory)-Datenmenge verändern, ohne dass sich gleich etwas an der DB ändert ?

mkinzler 8. Dez 2008 12:08

Re: Von DBGrid auf die aktuelle Zeile in der Query schliesse
 
Trotzdem weist der Datensatzzeiger auf den aktiven DS im Grid.


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:59 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz