AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit clientdataset

Ein Thema von Natcree · begonnen am 11. Jul 2014 · letzter Beitrag vom 19. Jul 2014
Antwort Antwort
Natcree

Registriert seit: 5. Mär 2013
502 Beiträge
 
Delphi 7 Enterprise
 
#1

Problem mit clientdataset

  Alt 11. Jul 2014, 03:18
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
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Problem mit clientdataset

  Alt 11. Jul 2014, 07:45
Warum machrst Du eine Kopie? Und warum kiopierst Du die Daten dann zurück?

Durch Erzeugen einer Kopie wird ja eine Kopie erzeugt, das Original bleibt unberührt. Beim Kopieren wird dann versucht identische Datensätze zu schreiben ( da ja alles schon vorhanden ist) was zu doppelten Datensätzen ( wenn keine Constraints vorhanden sind) oder einer Fehlermeldung führen kann.

Dein Fehler hat damit zu tun, dass du versuchst das Feld ID versuchst zu Kopieren ( ist autoinc)
Markus Kinzler
  Mit Zitat antworten Zitat
Natcree

Registriert seit: 5. Mär 2013
502 Beiträge
 
Delphi 7 Enterprise
 
#3

AW: Problem mit clientdataset

  Alt 19. Jul 2014, 22:56
also habe eine tool gebastelt ich habe fest gestellt das er nur ein problem mit dem autoinc feld hat nun speicher ich die daten in ein stringlist. dann mache ich eine kopie des 1. clientdataset in ein weiteres und füge ein spalte hinzu. nun kopiere ich den inhalt aus der stringlist bis auf die spalte mit den autoinc feldern die werden automatisch generiert und schon klappt es. sicherlich ein wenig umständlich aber es geht.. hat noch jemand ne andere idee?
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:47 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