Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Idee für ein neues Projekt (https://www.delphipraxis.net/39549-idee-fuer-ein-neues-projekt.html)

Lord_Stifterl 4. Feb 2005 09:42


Idee für ein neues Projekt
 
Hallo alle miteinander,

vorerst hoffe ich, für dieses Thema die richtige Sparte gewählt zu haben, da es sich aber hauptsächlich um den Firebird handelt, denke ich, dürfte es schon stimmen.

Ich habe mir in letzter Zeit ein wenig Gedanken über ein neues Projekt gemacht. Da fiel mir ein, dass es doch ganz nett wäre, dem Firebird ein Administrationsoberfläche zu verpassen. Ich weiß da gibt es schon einige wie den IBExpert oder den EMS IB/FB-Manager, etc... . Ich möchte jedoch eine Oberfläche erschaffen die das Aussehen von MS Access hat.

Die erste Stufe wäre, die normalen Funktionen wie etwa Tables, Views, Stored Procedures, etc anzeigen und bearbeiten zu lassen. Ohne viel SQL wohlgemerkt. Selbstverständlich soll es aber auch die Möglichkeit geben mit SQL zu arbeiten.

Die zweite Stufe hats dann aber schon in sich und das ist auch der Grund für meinen Beitrag. Ich möchte es irgendwie schaffen Forms erstellen zu lassen. Das ich diese dann nicht in einer Datei abspeichern kann wie mit Access ist mir schon klar (wäre schön wenns doch ginge). Für Oracle gibts sowas doch auch. ORACLE FORMS oder so ähnlich, oder hab ich da irgendetwas falsch verstanden. Leider kenne ich diese ORACLE FORMS nicht wirklich und weiß nun auch nicht wie das ganze abläuft. Ich denke aber, dass sowas doch zu schaffen sein sollte.

Jetzt zur alle entscheideneden Frage. Hat irgendjemand Ahnung wie ich soetwas anstellen könnte?

LG

Igotcha 4. Feb 2005 09:56

Re: Idee für ein neues Projekt
 
Ich habe mich auch mal mit dem Thema "automatisierte Datenbankformulare" beschäftigt und es gibt grundsätzlich (mindestens) 2 Wege:

1. eine (selbsterstellte) IDE zur Erstellung der Formulare
2. die Formulare werden nach Regeln selbst zusammengebaut

Ich habe mich hauptsächlich mit 2. beschäftigt, wobei das in meiner Anwendung folgendermaßen ablief:

Bei Auswahl eines Menüpunktes wird dem Anwender ein DBGrid präsentiert, welches man vorher auch filtern kann. Durch Doppelklick auf einen Eintrag wird dann das Detailformular geöffnet.

Das Detailformular ist eine "Hülle" und besteht aus einer Form mit einer Scrollbox, einem DBNavigator und einem "Schließen"-Button. Wenn nun auf dem DBGrid ein Doppelklick ausgeführt wird, passiert folgendes:

Die Datenfelder des Datensatzes werden ausgelesen und entsprechende Label und DBEdit-Komponenten werden auf der Scrollbox erzeugt. In meinem Anfangsstadium habe ich mich damit begnügt, immer 2 Felder pro Zeile anzeigen zu lassen. Dies kann man natürlich noch verfeinern, indem man eine extra "Definitionstabelle" anlegt, in der zu jeder "Formularsicht" gespeichert ist, welche Felder der User z.B. sehen kann und wie diese angeordnet werden - allerdings habe ich mir dazu keine IDE geschrieben, sondern die Werte manuell in eine Tabelle geschrieben.

Gruß Igotcha

Phoenix 4. Feb 2005 10:02

Re: Idee für ein neues Projekt
 
Eigentlich kein größeres Problem, wenn man sich anschaut, wie Formulare in Delphi behandelt werden.

Es gibt das DFM, in dem die Formulare als Text beschrieben werden.
Im Prinzip speicherst Du also nur alle Attribute ab, die nicht dem Standardwert entsprechen, wenn Du ein normales Formular erzeugst. Genauso gehst Du mit allen Controls vor.

Somit brauchst Du also im Prinzip nur ein abgeleitetes Formular, das 2 zusätzliche Methoden hat: Einmal aus einer Beschreibungsdatei (z.B. XML, so kannst Du die als Blob sogar in der Datenbank ablegen) das Formular und alle Controls erzeugen. Zum anderen eine, die das Formular und alle darauf existierenden Controls in ein XML packt.

Lord_Stifterl 4. Feb 2005 10:05

Re: Idee für ein neues Projekt
 
Hi igotcha,

danke vorerst mal. Das klingt für den Anfang mal gar nicht schlecht. Diese Variante kann man auf jeden Fall mal in die Planung mit einbeziehen.

LG

Lord_Stifterl 4. Feb 2005 10:17

Re: Idee für ein neues Projekt
 
Hi Phoenix,

Wenn ich das ganze jetzt richtig interpretiert habe, dann willst du mir damit sagen, dass die XML-Datei meine DFM-Datei wird und ich die Datei, den Pfad der Datei oder wie auch immer in der Datenbank hinterlege. :gruebel:

Das würde dann aber auch heißen, dass ich, wie auch bei Access, die Forms nur in meinem Programm anzeigen lassen kann. Naja...warum nicht. Hab ja auch nie gesagt, dass es ohne mein Progi funzen soll :-D

Deine Variante klingt natürlich sehr interessant. Mein Problem ist nur, dass ich in Wahrheit keine Ahnung von XML hab :( . Ich könnte diese Gelegenheit jedoch nutzen um XML kennen zulernen.

Robert Marquardt 4. Feb 2005 10:53

Re: Idee für ein neues Projekt
 
Es laeuft wohl darauf hinaus das du die Serialisierung von .dfm Files ersetzt.
Du kannst ja einen TForm-Abkoemmling erzeugen und dort genau die Serialisierung ueberschreiben.
Es laeuft ja nur auf ein Umformatieren in XML und die Umleitung in eine Datenbank heraus.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:28 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz