![]() |
Austausch zwischen zwei Formularen über TClientDataSet
Hallo,
ich habe zwei Formulare: Ein Hauptformular mit TClientDataSet und ein Unterformular, das dem TClientDataSet des Hauptformulars um einen neuen Datensatz ergänzen soll. Dabei muss ich alle Datensätze des TClientDataSet aus dem Hauptformulars in das Unterformular übertragen. Außerdem muss der neue Datensatz in den TClientDataSet des Hauptformulars geschrieben werden. Gibt es eine Möglichkeit, wie man direkt vom Unterformular aus auf den TClientDataSet des Hauptformulars zugreifen kann? Falls nicht, welches ist der einfachste Weg um das hin und her kopieren zwischen den Formularen so gering wie möglich zu halten? Vielen Dank und Gruß Consumer |
AW: Austausch zwischen zwei Formularen über TClientDataSet
Schreibe in die Uses-Liste des Unterformulars im interface-Teil die Unit des Hauptformulars und speichere die Unit des Unterformulars ab. Hast du nun auf dem Unterformular eine TDataSource, kannst du im Objektinspektor das (Client)Dataset des Hauptformulars auswählen.
|
AW: Austausch zwischen zwei Formularen über TClientDataSet
Schöner fände ich entweder eine Property vom Typ T(Client)Dataset des Unterformulars, der das Hauptformular dann einfach sein eigenes zuweist oder (wenn kein direkter Zugriff gewünscht ist) eine Lösung über selbstdefinierte Events.
|
AW: Austausch zwischen zwei Formularen über TClientDataSet
Zitat:
|
AW: Austausch zwischen zwei Formularen über TClientDataSet
Oder so. Ich mag es nur nicht sonderlich, wenn sich Units gegenseitig einbinden oder Klassen gegenseitig kennen müssen.
|
AW: Austausch zwischen zwei Formularen über TClientDataSet
Zitat:
Ein weiterer Ansatz wäre auch, das ClientDataSet in ein Datenmodul zu verpacken, dann hätte man die statische Felder auch gleich am Wickel. Der Möglichkeiten gibt es viele. |
AW: Austausch zwischen zwei Formularen über TClientDataSet
Okay, vielen, vielen Dank für die ganzen Anregungen.
Werde mich gleich mal ans Werk begeben und schauen wie ich’s umsetze. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:33 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-2025 by Thomas Breitkreuz