Business-Oberflächen
Grids, Formulare, Master-Detail und Reporting, gebunden an deine bestehenden Datasets.
Live-Demo öffnen →uniGUI von FMSoft ist ein kommerzielles Delphi-Web-Framework mit einer großen visuellen Palette und einem Design-Time-Erlebnis nah an nativer VCL-Entwicklung, und viele Teams haben damit ernsthafte Anwendungen ausgeliefert. Teams schauen sich sgcHTML meist dann an, wenn sie leichtere Seiten auf Basis von einfachem Bootstrap-5-Markup statt eines mitgelieferten JavaScript-Anwendungsframeworks wollen, wenn der Komponentenzustand pro Sitzung im Server-RAM zum Thema für die Kapazitätsplanung wird, oder wenn sie WebSocket-Echtzeit und eine .NET-Option aus demselben Komponentensatz wollen. sgcHTML hält dich in Object Pascal und RAD Studio und ändert dabei, wie die Seiten erzeugt werden.
Die beiden Frameworks lösen das Browser-UI-Problem auf unterschiedliche Weise. Hier der sachliche Unterschied, dann was dir das sgcHTML-Modell gibt.
In uniGUI werden Anwendungen im RAD Studio Formulardesigner mit datensensitiven Steuerelementen gebaut und über eine mitgelieferte Sencha-Ext-JS-Schicht im Browser gerendert. Sitzungen sind zustandsbehaftet: Jeder Benutzer hält den vollständigen Komponentenzustand im Server-RAM, sodass stark genutzte Anwendungen Speicherplanung und Sitzungsverwaltung brauchen. sgcHTML geht einen anderen Weg: dein Delphi- (oder C++ Builder- oder C#-)Code rendert Standard-Bootstrap-5-HTML auf dem Server, der Browser bleibt über htmx interaktiv, und jede Anfrage ist zustandslos, sofern du nicht selbst Zustand behalten willst.
Kein mitgeliefertes JavaScript-Anwendungsframework von Drittanbietern. Die Client-Seite besteht aus Bootstrap 5 plus htmx (~14 KB), sodass Seiten leichter sind und auf jedem Gerät schnell laden.
Die Ausgabe ist standardmäßiges, servergerendertes HTML, das du im Browser inspizieren und mit jedem Bootstrap-5-Theme umgestalten kannst, mit eingebautem hellem und dunklem Theming, statt eines Ext-JS-Looks.
Kein vollständiger Komponentenzustand pro Sitzung im Server-RAM per Voreinstellung. Du entscheidest, welche Sitzungsdaten du behältst, was Kapazitätsplanung und Neustarts vereinfacht.
WebSocket-Push kommt über die sgcHTMX-Engine aus demselben Komponentensatz, und dieselbe Tsgc*-API ist in Delphi, C++ Builder und einer rein verwalteten .NET-Implementierung verfügbar.
Die Bausteine lassen sich sauber zuordnen. Das ist die Übersetzungstabelle, die dein Team Bildschirm für Bildschirm verwendet.
| uniGUI-Konzept | sgcHTML-Entsprechung |
|---|---|
| uniForm / uniFrame | sgcHTML-Seiten- und Panel-Komposition aus Node-Komponenten |
| Datensensitive Grids und Edits | Datengebundene TsgcHTMLComponent_Grid / TsgcHTMLComponent_Form, direkt an ein TDataSet gebunden |
| Ext-JS-Client-Schicht | Bootstrap-5-Markup plus htmx (~14 KB) |
| Ajax-Ereignisse | htmx-Fragment-Routen, die Komponenten-HTML zurückliefern |
| Sitzungsverwaltung und RAM-Zustand pro Benutzer | Zustandsloses Rendering plus die Sitzungsdaten, die du behalten willst |
| Ext-Theming | Jedes Bootstrap-5-Theme, mit eingebautem hellem und dunklem Theming |
| uniGUI-Server- / HyperServer-Deployment | Einzelne sgcWebSockets-Server-Binärdatei, oder ein WebBroker-, DataSnap- oder RAD-Server-Host |
| Polling und Push-Erweiterungen | sgcHTMX-WebSocket-Broadcast von HTML-Fragmenten (hx-swap-oob) |
Der Wechsel zu sgcHTML ersetzt die UI-Schicht, nicht deine Investition.
Du bleibst in RAD Studio mit Delphi oder C++ Builder. sgcHTML-Komponenten sind native Klassen, die in deine Server-Binärdatei kompiliert werden, mit vollständigem Quellcode.
Deine TDataSet-Logik, Abfragen und Geschäftsregeln übernimmst du unverändert. 28 der 93 Komponenten sind datengebunden und binden direkt an ein TDataSet oder eine DataSource.
Du lieferst weiterhin eine einzelne eigenständige ausführbare Datei oder einen Dienst aus, ohne externe Laufzeitumgebung, die daneben installiert werden muss.
Du schreibst Object Pascal oder C#; sgcHTML schreibt das HTML, CSS und JavaScript. Vom Entwickler wird kein JavaScript verlangt.
Du musst nicht alles auf einmal migrieren. Vier Schritte, denen Teams in der Praxis folgen.
Liste jedes uniForm und uniFrame auf, die Datasets dahinter und welche Bildschirme Live-Daten brauchen. Dieses Inventar treibt den ganzen Plan.
Ordne jeden Bildschirm sgcHTML-Komponenten zu, mit der Konzepttabelle oben und der Komponentengalerie: Grids, Formulare, Diagramme, Dashboards und mehr.
Beide Server können hinter demselben Reverse-Proxy nebeneinander laufen, da sgcHTML Standard-HTTP ausliefert. Ziehe einen Bildschirm nach dem anderen um und lasse den Rest auf uniGUI, bis er fertig ist.
Ergänze htmx-Interaktionen für partielle Updates und WebSocket-Push über die sgcHTMX-Engine überall dort, wo die Anwendung Live-Daten braucht.
Du musst das nicht allein machen. Erzähl uns von deiner uniGUI-Anwendung, den Bildschirmen, den Daten dahinter und dem Echtzeitverhalten, das du brauchst, und das eSeGeCe-Team hilft dir, die Migration zu planen: eine Komponentenzuordnung, eine realistische Reihenfolge und eine Aufwandsschätzung.
Wenn du möchtest, bauen wir die Anwendung für dich neu, über sgcCustomization HTML: einmalige Pakete ab €149, bei denen unser Team die komplette Webanwendung aus einer schriftlichen Beschreibung baut und ein Projekt liefert, das du kompilierst, deployst und weiterentwickelst.
Der Fairness halber: Bei uniGUI zu bleiben ist eine vernünftige Wahl, wenn ein tiefes RAD-Formulardesigner-Erlebnis und eine desktopähnliche Oberfläche wichtiger sind als zustandslose Skalierung, und wenn die Zahl gleichzeitiger Benutzer begrenzt und eingeplant ist. Wenn du vor der Entscheidung das ganze Bild willst, lies unsere neutrale Matrix mit Quellen, in der jede Aussage auf die eigene Dokumentation des jeweiligen Anbieters verlinkt.
Das sind Delphi-Anwendungen, die ihr eigenes HTML über sgcHTML ausliefern, ohne JavaScript-Build-Schritt und ohne separates Frontend-Projekt.
Grids, Formulare, Master-Detail und Reporting, gebunden an deine bestehenden Datasets.
Live-Demo öffnen →
Live-CRUD mit Suche während der Eingabe und Inline-Bearbeitung über htmx.
Live-Demo öffnen →
KPI-Karten, Diagramme, Treemaps und Gauges, gerendert aus Pascal.
Live-Demo öffnen →