![]() |
Datenbank: mysql • Version: 5.4 • Zugriff über: fdquery
Data module / Umstieg von ttable auf fdquery
Hallo miteinander, habe ein Verständnisproblem im Einsatz der Datamodule bzw. der Datasets in den DM.
Ich habe etwa 150 fdquery mit dazugehörenden Datasource. Diese habe ich in 5 Datamodule alphabetisch untergebracht. Nun nehme ich ein Formular A das auf eine fdQuery aus dem DM referenziert und setze im DM die entsprechende SQL Anweisung (Select *...) Wenn ich nun aus einem Formular B die gleiche fdQuery mit einer anderen SQL Anweisung brauche dann überschreibe ich ja die Anweisung die für das Formular A benötigt wurde - oder denke ich da falsch? Mein Problem also: Wie greife ich mehrfach und unter verschiedenen Bedingungen auf das gleiche Dateset (fdQuery), das sich einmalig im DM befindet, zu ohne das mir die formularbezogene SQL Anweisungen gegenseitig stören? Ich hoffe, dass ich nicht alle Datasetz auf das jeweilige Formular platziern muss. Unter BDE und ttable war das kein Problem weil es keine gespeicherte SQL Anweisung im DM gab (table.open, index setzen...). Ich hoffe auf ein paar Tipps die mich weiterbringen. Vielen Dank. |
AW: Data module / Umstieg von ttable auf fdquery
Bei der Verwendung von datensensitiven Komponenten wird das nicht funktionieren. Du benötigst dann pro Formular eine Aktive Abfrage.
Zitat:
Wenn Du die SQL-Anweisungen eh überschreibst, wäre in Deinem Fall dann lokale Komponenten sinnvoller. Ich würde aber Dein gesamten Konzept überdenken. |
AW: Data module / Umstieg von ttable auf fdquery
Teilweise sind die Namen der Funktion zugeordnet (Angebot/Auftrag..). Diese sind in einem DM.
Es gibt aber auch welche die verschiedenste Funktionen haben, so z.B. der Artikelstamm. Neben Artikelinfos führt er auch den Bestand. Das könnte ich nun unter "Lager" oder "Artikelstamm" führen. Aber das ist nicht mein Problem. Ich verstehe nicht warum man Datamodule hat wenn ich die Inhalte(Datasource und/oder Dataset) dann doch aufs Formular ziehen muss. Es muss doch eine Möglichkeit geben das Dataset "zu kapseln" oder sowas. Da ich ein SQL Anfänger bin tu ich mir noch schwer alles 100%ig zu verstehen. Ich bin gerne bereit alles zu überdenken(bin noch heftig BDE/tTable infiziert) und freue mich auf Anregungen. |
AW: Data module / Umstieg von ttable auf fdquery
Eine DataSource ist nur ein Bindeglied zwischen dem DataSet und den datensensitiven Komponenten.
|
AW: Data module / Umstieg von ttable auf fdquery
Soweit bin ich schon :-D.
Aber wie spreche ich das Dataset aus der DM an ohne das sich die unterschiedlichen Selects aus den unterschiedlichen(offenen) Formulare gegenseitig stören? |
AW: Data module / Umstieg von ttable auf fdquery
Gar nicht. Es wird mit dem DataSet verbunden und angezeigt. Wird dessen Inhalt verändert, ändert sich auch der Inhalt in den Anzeigekomponenten!
Wenn Du 150 Freunde einlädst benötigst Du auch 150 Gläser! |
AW: Data module / Umstieg von ttable auf fdquery
aber es reicht eine Bardame (query) die die Gläser füllt.
deine Freunde (componenten?) müssen sich nur selbst um ihre Gläser (Daten) kümmern. Gruß K-H |
AW: Data module / Umstieg von ttable auf fdquery
OK, Du meinst also auf das jeweilige Formular die fdquery und die DS setzen.
Ich hab bissl rumgesucht und festgestellt, dass ich über Fieldoptions das Verhalten der Query beeinflussen kann. So kann ich ein namensgleiches Dataset auf das Formular platzieren(und auf dem DM) und über die Feldoptions bestimmen das die Tabelenfelder+die formularbezogenen Felder (z.B. Lokup, berechnete Felder) automatisch eingelesen werden (Combined). Das ist eine große Hilfe denn somit muss ich nicht bei jeder Tabellenerweiterung daran denken die einzelnen Formulare bzw. die Datasets die drauf sind ändern zu müssen. Hast es so gemeint? |
AW: Data module / Umstieg von ttable auf fdquery
Zitat:
Wenn schon 150 verschiendene(!?) fdquery da sind, was sprich gegen die 151. Query, die genau passend ist. Statt eine "fremde" Query zu "misbrauchen"? Andersrum/ anderes Konzept: Wenn schon Queries dynamisch befüllt werden- was ja scheinbar irgendwie der Fall ist-, warum dann noch 150 Stück davon? Wieso nicht je Bedarf ein QueryObjekt erzeugen (dann muss ich nur irgendwo die Tablenames oder Abfrage Statements verwalten. |
AW: Data module / Umstieg von ttable auf fdquery
Ja... ok... aber irgendwo musste ich seither die jeweiligen Tables dem Projekt mitteilen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:21 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