Einzelnen Beitrag anzeigen

Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#10

Re: MDI Childfenster und Dataset Verhalten

  Alt 17. Nov 2005, 15:11
Zitat von mschaefer:
Wenn die Dinger unabhängig scrolen sollen, dann mußt Du allerdings die Query auch mit auf das Cleint ziehen. Die Query hält ihren eigenen DataSet. Query auf Datamodule gibt es übrigens auch oft. Da will man gerade das Erreichen, was Du beschrieben hast: mehrere Formulare auf dem gleichen Datensatz,
Und eben genau das wollte ich vermeiden, weil ich die Datenbankfunktionalität komplett ins Datenmodul auslagern will, und in der Form nur die Sachen angezeigt werden sollen. Das hat mich aber dazu gezwungen, dass die Dataset Eigenschaft meiner Datasource während der Designzeit auf das Dataset im Datenmodul gelinkt wurde. Ich benutze aber nun während der Laufzeit nicht diesselbe Instanz vom Datenmodul, sondern erzeuge mir das Datenmodul selbst per Hand im Oncreate des Forms, da es ja sonst schon von vorne herein zu Drucheinander kommt, sobald mehrere MDI Childs offen sind, und die alle auf die gleichen Datasets zugreifen.

Somit habe ich also ersteinmal zur Lufzeit auch einen statischen Bezug zum Datenmodul in Delphi, das ich eigentlich gar nicht benutze. Deshalb muss ich für jede Datasource die Dataset Eigenschaft während der Laufzeit nochmal neu anpassen, damit unterschiedliche Forms ihre Daten auch von unterschiedlichen Datenmodulintsanzen beziehen können. Und das klappt jetzt wunderbar mit obigem Code, bei dem ich für jede Datasource Kompo auf der Form die Dataset Eigenschaft entsprechend neu anpasse.

Zitat von mschaefer:
PS: DataSource auf dem Client ist auch sinnvoll, denn dadurch kann das Cleintformular im OnChange der Datasource auf einen Datensatzwechsel reagieren. Sonst würde das Ereignis nur im Datamodule auftreten, was meist wenig bringt, wenn visuelle Komponenten betroffen sind.
Das seh ich genauso.
  Mit Zitat antworten Zitat