Hallo ich möchte in ein bestehendes Clientdataset ein Feld hinzufügen. Dazu speicher ich vorher die daten aus dem clientdataset in ein anderes. Danach soll ein Feldhinzugügt werden. Anschließend sollen die daten wieder zurück ins erste Clientdataset. Nunmehr mal funktioniert es mal nicht. Er gibt mir immer fehlermeldung das ich das Feld ID (autoinc feld) nicht modifizieren kann. und bricht ab. Hier mal der code
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
y,i:integer;
begin
ClientDataSet2.Data:=ClientDataSet1.Data; //kopiere Datenmenge
ClientDataSet1.Close;
ClientDataSet1.FieldDefs.Add('TMPFELD',ftString,20 ); //neues Feld hinzufügen
ClientDataSet1.CreateDataSet;
ClientDataSet1.Open;
for y:=0 to ClientDataSet2.RecordCount-1 do // Jetzt die alten Daten zurück kopieren
begin
ClientDataSet1.Append;
for i:=0 to ClientDataSet2.FieldCount-1 do
ClientDataSet1.Fields.Fields[i]:=ClientDataSet2.Fields.Fields[i];
clientdataset1.Post;
end;
end;
wenn keine daten drinne stehen kommt keine id modi... Meldung