AGB  ·  Datenschutz  ·  Impressum  







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

Übergabe der Connection

Ein Thema von Sidi61 · begonnen am 13. Aug 2017 · letzter Beitrag vom 8. Sep 2017
Antwort Antwort
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#1

AW: Übergabe der Connection

  Alt 14. Aug 2017, 08:43
In der Entwicklungsphase ist es natürlich praktisch wenn MyQuery mit der Connection des Haupt-form verbunden ist da dann die felder bequem ausgewählt werden können.
Das klingt sehr nach einem dieser Programme, die falls sie ihre Datenbank nicht erreichen, sang und klanglos oder aber mit irreführender Fehlermeldung abrauchen.

Nachdem ein rudimentäres "Startformular" erstellt wurde, sollte ein Programm seine Datenbank suchen, und im Fehlerfall eine aussagekräftige Meldung ausgeben.

Alles was in diesem Zusammenhang "Auto" ist, sollte man tunlichst meiden.

Edith:
Warum interessieren sich Deine Units überhaupt für die Datenbank?
Die Routinen eines Datamodules liefern die notwendigen Daten, egal woher sie kommen. Dem Restprogramm kann es schließlich egal sein woher sie kommen.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector

Geändert von p80286 (14. Aug 2017 um 08:47 Uhr)
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Übergabe der Connection

  Alt 14. Aug 2017, 11:21
Hallo,
wir haben alle mal angefangen mit einer TTable auf dem Formular ...
Also bitte nicht sofort auf ihn draufhauen, wer er etwas eurer Meinung suboptimales macht.

Zitat:
In der Entwicklungsphase ist es natürlich praktisch wenn MyQuery mit der Connection des Haupt-form verbunden ist da dann die felder bequem ausgewählt werden können.

Ich würde im OnCreate des DataModuls einfach Connection.Active=False setzen.

Ausserdem würde ich alle Forms ausser dem Hauptform dynamisch erstellen, das wäre aber schon der nächste Thread.
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#3

AW: Übergabe der Connection

  Alt 14. Aug 2017, 14:45
Hallo,
wir haben alle mal angefangen mit einer TTable auf dem Formular ...
Also bitte nicht sofort auf ihn draufhauen, wer er etwas eurer Meinung suboptimales macht.
Ist ja nicht bös' gemeint. Nur erleben wir ja hier oft genug, daß auch gestandene Programmierer sich von RAD zu etwas suboptimalen Konstrukten hinreißen lassen, und dann vor ähnlichen Problemen wie der TE stehen. Für Quick'n Dirty reicht das, keine Frage, aber wenn man ernst macht, dann stößt man leicht an die Grenzen.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Sidi61

Registriert seit: 13. Jun 2006
97 Beiträge
 
Delphi XE5 Professional
 
#4

AW: Übergabe der Connection

  Alt 14. Aug 2017, 22:59
[QUOTE=p80286;1378678
Edith:
Warum interessieren sich Deine Units überhaupt für die Datenbank?
Die Routinen eines Datamodules liefern die notwendigen Daten, egal woher sie kommen. Dem Restprogramm kann es schließlich egal sein woher sie kommen.

Gruß
K-H[/QUOTE]

Weil z.B. ein Kassenbuch das in verschiendenen Anwendungen verwendet werden soll und aus mehreren Forms besteht wie Kontenramen, Auswertdialog, MwSt Tabellen, Kontogruppen usw. am Ende doch sehr umfangreich ist aber alle Datenbank Routinen und Einstelldaten beinhalten soll, nicht die Datenbank Funktionalität an ein Datenmodul abgeben kann sonst habe ich am Ende für jede Thema ein eigenes Datenmodul.

Das mit dem Auslagern der TMyConnection in ein Datenmodul war schon der richtige Ansatz, ich muss jetzt eben meine Angewohnheiten ein wenig ändern und die Datei nicht mehr in der OnCreate öffnen sondern nachdem alle Formulare erzeugt sind von der Hauptanwendung aus - dann müsste es klappen, und was ich mache wenn es nicht klappt das sehe ich dann wenn es nicht klappt, das klappt immer

Danke für eure Hilfe

Gruß
Sidi
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#5

AW: Übergabe der Connection

  Alt 14. Aug 2017, 23:31
Weil z.B. ein Kassenbuch das in verschiendenen Anwendungen verwendet werden soll und aus mehreren Forms besteht wie Kontenramen, Auswertdialog, MwSt Tabellen, Kontogruppen usw. am Ende doch sehr umfangreich ist aber alle Datenbank Routinen und Einstelldaten beinhalten soll, nicht die Datenbank Funktionalität an ein Datenmodul abgeben kann sonst habe ich am Ende für jede Thema ein eigenes Datenmodul.
nicht notwendiger Weise. Wie wäre es mit einem Datenmodul für alles?

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Delbor

Registriert seit: 8. Okt 2006
Ort: St.Gallen/Schweiz
1.192 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Übergabe der Connection

  Alt 8. Sep 2017, 16:43
Hi zusammen
Der Thread ist zwar schon etws älter, aber ich erlaube mir trotzdem, noch meinen Senf dazuzugeben:
Zitat:
Das mit dem Datenmodul würde grundsätzlich funktionieren, nur beim Kompilieren hagelt es Fehlermeldungen wegen fehlender Datenbankverbindung noch bevor ein Form sichtbar wird.
Erzeuge das Datenmodul dynamisch im OnCreate der Hauptform und gut ist...
Zitat:
Weil z.B. ein Kassenbuch das in verschiendenen Anwendungen verwendet werden soll und aus mehreren Forms besteht wie Kontenramen, Auswertdialog, MwSt Tabellen, Kontogruppen usw. am Ende doch sehr umfangreich ist aber alle Datenbank Routinen und Einstelldaten beinhalten soll, nicht die Datenbank Funktionalität an ein Datenmodul abgeben kann sonst habe ich am Ende für jede Thema ein eigenes Datenmodul.
Die Lösung: Das Datenmodul gibt seine Ergebnisse per Event an die Aussenwelt weiter. Wer diese Events dann in einem Eventhandler abfängt, kann ihm egalsein. Und schon kannst du dein Datenmodul überall da verwenden, wo du lustig bist - ohne deswegen auch nur einen Codebuchstaben ändern zu müssen.

Gruss
Delbor
Roger
Man muss und kann nicht alles wissen - man muss nur wissen, wo es steht.
Frei nach Albert Einstein
http://roase.ch

Geändert von Delbor ( 8. Sep 2017 um 16:49 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 13:31 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 by Thomas Breitkreuz