Tabellen synchronisieren

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Tabellen-Datenmengen


Bei Verwendung mehrerer Datenmengen, die dieselbe Datenbanktabelle darstellen, aber nicht dieselbe Datenquellenkomponente verwenden, ist für jede Datenmenge eine eigene Sicht auf die Daten und ein eigener aktueller Datensatz vorhanden. Da die Benutzer über die Datenmengen auf die Datensätze zugreifen, steht der Cursor bei jeder Komponente auf einem anderen aktuellen Datensatz.

Wenn es sich bei den Datenmengen um Instanzen von TTable bzw. von TIBTable oder um Client-Datenmengen handelt, können Sie durch Aufruf der Methode GotoCurrent erzwingen, dass in allen Datenmengen der Cursor auf demselben Datensatz steht. Mit GotoCurrent wird der Cursor so gesetzt, dass der aktuelle Datensatz der einen Datenmenge mit dem aktuellen Datensatz einer entsprechenden Datenmenge übereinstimmt. Der folgende Beispielquelltext bewirkt, dass anschließend der aktuelle Datensatz der Datenmenge CustomerTableOne gleich dem aktuellen Datensatz der Datenmenge CustomerTableTwo ist:

CustomerTableOne.GotoCurrent(CustomerTableTwo);
CustomerTableOne->GotoCurrent(CustomerTableTwo);

Tip:  Wenn in einer Anwendung die Datenmengen auf diese Weise synchronisiert werden müssen, ist es sinnvoll, diese in einem Datenmodul zu platzieren und den Header für das Datenmodul zur uses-Klausel aller Units hinzuzufügen, die auf die Tabellen zugreifen.

Zum Synchronisieren von Datenmengen aus unterschiedlichen Formularen müssen Sie die Header-Datei eines Formulars zur Quell-Unit des anderen Formulars hinzufügen. Außerdem müssen Sie den Namen mindestens einer Datenmenge durch den Formularnamen qualifizieren. Beispiel:

CustomerTableOne.GotoCurrent(Form2.CustomerTableTwo);
CustomerTableOne->GotoCurrent(Form2->CustomerTableTwo);


Siehe auch