Moin. Ich habe folgendes Problem. Ich möchte Datensatze in einer Tabelle kopieren. Ich habe auch schon was zusammengebastelt aber das funktioniert. Sprich es wird nichts kopiert.
Delphi-Quellcode:
function TForm1.CopyVorgang(ds : TADODataSet; akte: string):boolean;
var
fields : array[0..20] of Variant;
i : integer;
begin
for i := 0 to ds.FieldCount -1 do
fields[i] := ds.FieldList[i].AsVariant;
ds.InsertRecord([nil,akte]);
ds.Edit;
for i := 2 to ds.FieldCount-1 do
ds.FieldByName(ds.FieldList[i].FieldName).AsVariant := fields[i];
// oder ds.FieldList[i].AsVariant := fields[i]
ds.Post;
end;
damit möchte ich den aktuellen datensatz kopieren, wobei das erste feld ein autofeld ist und das zweite feld entsprechend geändert werden kann. Der neue Datensatz wird ja auch richtig eingefügt (ds.InsertRecord) aber es werden keine Daten kopiert. Ich hab am Ende auch schon ein Post versucht, aber dann kommt nur die Meldung "Die zum aktualisieren angegebene zeile wurde nicht gefunden. Einige Werte wurde seit dem letzten Lesen ggf. geändert"
Gruß
tr909