Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Wie eine TClientDataSet mit Daten klonen ? (https://www.delphipraxis.net/96073-wie-eine-tclientdataset-mit-daten-klonen.html)

madina 18. Jul 2007 10:54


Wie eine TClientDataSet mit Daten klonen ?
 
Hallo,

wie kann ich eine TCDS1 im Laufzeit mit Daten zu TCDS2 kopieren/klonen (unabhängig von einander), damit ich beim TCDS1 Änderungen vornehmen kann und später TCDS1 rückgängig machen (d.h. TCDS1:= TCDS2) und TCDS2 löschen?

Delphi-Quellcode:
var TCDS1, TCDS2: TClientDataSet;
TCDS1:= TClientDataSet.create;
TCDS2:= TClientDataSet.create;

TCDS2:= TCDS1; // geht das ????
mfg

Klaus01 18. Jul 2007 11:27

Re: Wie eine TClientDataSet mit Daten klonen ?
 
Geht es nicht so?
TCDS2.Assign(TCDS1)
Bin mir nicht sicher.

Grüße
Klaus

PMM 18. Jul 2007 11:57

Re: Wie eine TClientDataSet mit Daten klonen ?
 
Was willst du erreichen? Eine Kopie der Daten anlegen? Das geht am sichersten via SaveToStream / ReadFromStream.
Unter Clonen versteht TClientDataSet eine neue Sicht (für unterschiedliche Filter, unterschiedliche Sortierung u.ä.) auf die bestehenden Daten anlegen (die dabei gerade nicht kopiert werden) und stellt dazu die Methode "CloneCursor" zur Verfügung.
Dein Beispielcode erstellt 2 (leere) DataSets, überschreibt dann aber den Zeiger auf den 2. und macht diesen zu einer Speicherleiche!
"Assign" geht soweit ich weiss nicht.
PMM


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:28 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