AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Form + DataModule mehrere Instanzen

Ein Thema von Nersgatt · begonnen am 31. Jul 2017 · letzter Beitrag vom 31. Jul 2017
Antwort Antwort
Benutzerbild von smallie
smallie

Registriert seit: 8. Jan 2013
19 Beiträge
 
Delphi 10.3 Rio
 
#1

AW: Form + DataModule mehrere Instanzen

  Alt 31. Jul 2017, 16:00
Die Anforderung nach eigenen Instanzen für das Datenmodul habe ich noch nicht verstanden.

Sollte es nicht reichen, die Datensourcen auf das Formular zu setzen, dann können die Formulare unabhängig voneinander in den Daten scrollen. Das Datenmodul darf Singleton bleiben.
"There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors."
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.746 Beiträge
 
Delphi 12 Athens
 
#2

AW: Form + DataModule mehrere Instanzen

  Alt 31. Jul 2017, 16:03
Jedes Formular mit seinem eigenen DatenModul und den darauf liegenden DataSources,

sonst zeigt doch jede Form das Gleiche an, wenn die alle mit der selben DataSource arbeiten.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.746 Beiträge
 
Delphi 12 Athens
 
#3

AW: Form + DataModule mehrere Instanzen

  Alt 31. Jul 2017, 16:31
Ein DesignTimePackage mit RegisterComponents('DatenModule', [TMyDataModule]); und schon kannst du das Datenmodul als Non-visuelle Komponente auch direkt auf die Form pappen, aber die Datenmodul-Komponente muß dort unbedingt einen anderen Namen bekommen, wie in der DFM des Datenmoduls steht.
(sicherheitshalber SetName des DatenModule überschreiben und das unterbinden)

Ob die DFM des Datenmoduls hier auch richtig geladen wird, kann ich jetzt nicht beurteilen, aber ich denke es könnte funktionieren.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von Nersgatt
Nersgatt

Registriert seit: 12. Sep 2008
Ort: Emlichheim
693 Beiträge
 
Delphi 10.1 Berlin Professional
 
#4

AW: Form + DataModule mehrere Instanzen

  Alt 31. Jul 2017, 16:31
Sollte es nicht reichen, die Datensourcen auf das Formular zu setzen, dann können die Formulare unabhängig voneinander in den Daten scrollen. Das Datenmodul darf Singleton bleiben.
In der Regel lade ich die Daten durch ein TuniQuery in ein TClientDataset. Der Query übergebe ich Parameter an den SELECT, damit die Datenbank für mich nur die relevanten Daten raus filtert.
Wenn ich nun 2 Instanzen mit verschiedenen Parametern öffnen möchte, benötige ich diese 2 Instanzen des Datenmoduls. Sonst müsste ich noch das ClientDataSet auf das Formular packen. Das möchte ich nicht, das finde ich unübersichtlich.
Jens
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.746 Beiträge
 
Delphi 12 Athens
 
#5

AW: Form + DataModule mehrere Instanzen

  Alt 31. Jul 2017, 16:50
Wir haben einen TDataSource-Nachfahren der ein DataSet (pgDAC) drin hat.
Im Create holt der sich auch selber standardmäßig erstmal die Connection von einem globalen DataModul. (kann man notfalls danach was Anderes zuweisen ... man könnte sich da auch die erste Connection auf dem gemeinsamen Owner suchen, wenn im BeforeOpen noch keine Connection zugewiesen)

Dann noch paar Dinge, wie z.B. das SQL-Property, durchgereicht und als Published in die DataSource.


Nur eine Komponente auf der Form. (inkl. Preload der Default-Werte im AfterInsert uvm.)


Ist wie Delphi-Referenz durchsuchenTLabeledEdit ... man kann TEdit und TLabel alleine auf die Form packen, oder zusammen.
Zusammen kann/sollte man aber TLabeledEdit nochmal ableiten und die Label-Caption etwas schöner in dem Edit platzieren.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (31. Jul 2017 um 16:55 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:32 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