Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Thin Client dynamisch anpassen (https://www.delphipraxis.net/125638-thin-client-dynamisch-anpassen.html)

nachti1505 9. Dez 2008 12:29


Thin Client dynamisch anpassen
 
Hallo,

für einen ThinClient einer Datasnap Anwendung soll die Möglichkeit bestehen, auf Änderungen des Datenbankschema derart zu reagieren, dass die Formulare für Datenein- und ausgabe dynamisch erzeugt werden.

Dadurch, dass bei jeglicher Änderung des Datenbankschema der Client neu verteilt werden müsste, soll sich der Client beim Öffnen eines Formulares eben dieses auch vom Datasnap-Server laden.

Eine Änderung des DB-Schema zieht nun nur eine Änderung des Server nach sich. Die Änderungen sind vor den Clienten also mehr oder weniger maskiert.

Existieren dazu bereits bekannte Ansätze, wie man vorgehen kann?

Folgende Möglichkeiten habe ich derweil in Betracht gezogen:

1) {nicht ganz konform zu den Anforderungen, aber machbar}
Der Server hält alle Formulare als BPL-Files in der Datenbank. Mit einem Request, dass der Client nun bspw. die Adressenverwaltung öffnen möchte, lädt sich der Client von der Serveranwendung das Package abcADRESSEabc.bpl und startet das darin enthaltene Formular. Problem: Das Package muss erst als Datei gespeichert werden. Oder gibt es ein LoadPackage(Stream: TStream)?

2)
Das Formular wird dfm-like übertragen und alle Komponenten werden zur Laufzeit erstellt. Großes Problem: Im Formular geschriebener Code ist nicht mehr vorhanden.

3) ???

mkinzler 9. Dez 2008 15:00

Re: Thin Client dynamisch anpassen
 
Zitat:

2)
Das Formular wird dfm-like übertragen und alle Komponenten werden zur Laufzeit erstellt. Großes Problem: Im Formular geschriebener Code ist nicht mehr vorhanden.
Da befindet sich ja sowieso kein Code. Die Event-Methoden kannst du ja auch dynamisch den Event-Properties zuweisen.

mjustin 9. Dez 2008 18:05

Re: Thin Client dynamisch anpassen
 
Zitat:

Zitat von nachti1505
Hallo,

für einen ThinClient einer Datasnap Anwendung soll die Möglichkeit bestehen, auf Änderungen des Datenbankschema derart zu reagieren, dass die Formulare für Datenein- und ausgabe dynamisch erzeugt werden.
3) ???

3) HTML (Webserver) Seiten erstellen. Sind immer up to date, können auch über DataSnap erzeugt werden - sofern man den Web Server mit Delphi schreibt (z.B. mit WebSnap oder IntraWeb).

Vorteil: keine Binärdateien müssen zum Client übertragen werden. Anwendungslogik liegt im DataSnap-Server und Web Server. Keine Gefahr, versehentlich einen Virus einzuschleppen, und auch keine Probleme mit zu öffnenden Ports.

Nachteile: ja, die gibt es auch :wink:


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:16 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