![]() |
Re: Kopieren aus DBGrid1 in DBGrid
Komsich, eigentlich müsste beides vom Typ TBytes sein :gruebel:
|
Re: Kopieren aus DBGrid1 in DBGrid
Das dachte ich auch.
Der Pointer springt nur nicht auf den markierten Datensatz sondern nur auf den 1. |
Re: Kopieren aus DBGrid1 in DBGrid
Welche Delphiversion?
|
Re: Kopieren aus DBGrid1 in DBGrid
Hallo,
mach mal ganz am Anfang (vor der for-Schleife)
Delphi-Quellcode:
DBGrid1.SelectedRows.Refresh;
Heiko |
Re: Kopieren aus DBGrid1 in DBGrid
Hallo,
Delphi-Quellcode:
hat nichts gebracht.
DBGrid1.SelectedRows.Refresh;
Ich nutze die Delphi Version: 2007 [edit=mkinzler]Delphi-Tag eingefügt Mfg, mkinzler[/edit] |
Re: Kopieren aus DBGrid1 in DBGrid
Hallo,
stimmen denn die SelectedRows.Count mit den tatsächlich markierten Zeilen überhaupt überein. Nimm doch zur Not völlig separate Queries zum DB-Update. Ich habe DBGrid nie benutzt. Heiko |
Re: Kopieren aus DBGrid1 in DBGrid
Ich finde es irgendwie komisch, dass
Zitat:
|
Re: Kopieren aus DBGrid1 in DBGrid
Hallo,
ist es nicht das ist aus der Hilfe zu SelectedRows -> Beispiele DBGrid1.DataSource.DataSet.GotoBookmark(Pointer(DB Grid1.SelectedRows.Items[i])); klar hätte man auch statt DBGrid1.DataSource.DataSet das direkte AdoQuery nehmen können. Die Hilfe bezieht sich aber AFAIK auf die BDE (wobei TDataSet ja BDE-unabhängig ist) Heiko |
Re: Kopieren aus DBGrid1 in DBGrid
Hier noch einmal der Code:
Delphi-Quellcode:
Die Schleife for i := 0 to DBGrid1.SelectedRows.Count - 1 do funktioniert. Es wird tatsächlich zu jedem Datensatz im Grid gesprungen. D.h., dass auch DBGrid1.DataSource.DataSet.GotoBookmark(pointer(DB Grid1.SelectedRows.Items[i])); funktioniert.
begin
inherited; with dm_Nails4You_Artikel do BEGIN ADOQuery_Preisliste.Active := False; ADOQuery_Preisliste.SQL.Clear; ADOQuery_Preisliste.SQL.Text := 'INSERT INTO Preisliste(ID_Artikel, Bezeichnung) VALUES( :ID, :Bezeichnung)'; ADOQuery_Preisliste.Parameters.ParseSQL(ADOQuery_Preisliste.SQL.Text, true); with DBGrid1.DataSource.DataSet do begin // DBGrid1.SelectedRows.Refresh; for i := 0 to DBGrid1.SelectedRows.Count - 1 do BEGIN DBGrid1.DataSource.DataSet.GotoBookmark(pointer(DBGrid1.SelectedRows.Items[i])); ShowMessage('i: ' + InttoStr(i) ); ADOQuery_Preisliste.Parameters.ParamValues['ID'] := AdoQuery_Artikel.FieldValues['id']; ADOQuery_Preisliste.Parameters.ParamValues['Bezeichnung'] := AdoQuery_Artikel.FieldValues['Bezeichnung']; ADOQuery_Preisliste.ExecSQL; End; end; end; Aber dann wird immer nur der 1. Datensatz kopiert. |
Re: Kopieren aus DBGrid1 in DBGrid
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:49 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