Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Markierten Zeilen eines DB-Grids bearbeiten (https://www.delphipraxis.net/87404-markierten-zeilen-eines-db-grids-bearbeiten.html)

tr909 28. Feb 2007 11:10

Datenbank: Access • Version: 2000 • Zugriff über: ADO

Markierten Zeilen eines DB-Grids bearbeiten
 
Moin. Ich hab folgendes Problem. Ich möchte mit den markierten Zeilen eines DGBrids bestimmte aktionen durchführen. Leider hab ich es noch nicht geschafft auf die einzelnen markierten Zeilen direkt zuzugreifen, außer über eine Schleife und die Eigenschaft .SelectedRows.CurrentRowSelected
Das finde ich nicht sehr optimal und es wäre schön wenn es da eine besser Methode gäbe. Nachfolgend mal das was ich gebastelt habe. Die Procedur doCopyAnzeige kopiert den jeweils aktuellen Datensatz nach bestimmten Kriterien. Was ich bräuchte wäre halt eine Möglichkeit direkt auf ein bestimmtes Feld der markierten Zeilen (z.B. ID) zuzugreifen um dann diesen Wert an die Rrocedur übergeben zu können.

Delphi-Quellcode:
selrow := JvDBUltimGrid1.SelectedRows.Count;
selcount := 0;
JvDBUltimGrid1.DisableScroll;
data.dsAnzeigen.First;
while not data.dsAnzeigen.eof do
begin
   if JvDBUltimGrid1.SelectedRows.CurrentRowSelected then
   begin
      inc (selcount);
      doCopyAnzeige(anzahl,interval,ausgabe);
   end;
   if selcount >= selrow then
       break;
   data.dsAnzeigen.Next;

end;
data.dsAnzeigen.ReQuery;
JvDBUltimGrid1.EnableScroll;
Gruß
tr909

mkinzler 28. Feb 2007 11:21

Re: Markierten Zeilen eines DB-Grids bearbeiten
 
En DBGrid zeigt die Daten eines datenSets an. Die markierte Zeiel ist die aktive Zeile des DataSets.

tr909 28. Feb 2007 11:27

Re: Markierten Zeilen eines DB-Grids bearbeiten
 
Bei einer markierte Zeile ist das ja auch kein Problem. Aber wenn ich mehrere Zeilen markiert habe weiß ich nicht wie ich außer meiner Lösung an die Daten der markierten zeilen kommen soll.

daddy 28. Feb 2007 11:46

Re: Markierten Zeilen eines DB-Grids bearbeiten
 
Versuch es doch mal auf folgende Art:

Delphi-Quellcode:
  for I := 0 to DBGrid.SelectedRows.Count - 1 do
  begin
    DS.GotoBookmark(pointer(DBGrid.SelectedRows.Items[I]));
    ... tu irgend etwas ...
  end;

tr909 28. Feb 2007 13:04

[erledigt] Re: Markierten Zeilen eines DB-Grids bearbeiten
 
Besten Dank. Genau so hatte ich mir das gedacht. Bis zu den Items war ich ja auch schon gekommen, dann dann hing ich ;)

Gruß
tr909


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

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