Zum Hauptinhalt springen
HPO Software Schritt-für-Schritt-Anleitungen für 4D-Datenbanken und Low-Code-Apps – von der ersten Tabelle bis zur fertigen Business-App.

Einige Links auf dieser Website sind Affiliate-Links: Wenn Sie über diese kaufen, erhalten wir unter Umständen eine Provision, ohne dass für Sie zusätzliche Kosten entstehen. Dies beeinflusst niemals unsere Empfehlungen. Details finden Sie in unserer Affiliate-Offenlegung. Offenlegung der Affiliate-Partnerschaft.

Grundlagen des Lernens in der vierten Dimension

Das Konzept einer Runtime ist eine der wichtigsten — und am meisten missverstandenen — Ideen in der Welt der 4th Dimension (4D). Es ist das Herzstück dessen, wie man eine für sich selbst erstellte Datenbank in eine verteilbare Anwendung verwandelt, die andere Personen nutzen können, ohne ihnen die Schlüssel zum Quellcode zu übergeben oder sie zu zwingen, eine vollständige Entwicklungslizenz zu erwerben. Dieser Abschnitt erklärt, was Runtimes sind, wie 4D und FileMaker Pro (FMP) sie unterschiedlich angegangen sind und welche praktischen Einschränkungen Sie verstehen müssen, bevor Sie eine Bereitstellung planen.

Key Takeaways

  • Eine Runtime bündelt eine abgespeckte Engine mit Ihren entwickelten Dateien, sodass Endbenutzer Ihre Anwendung ausführen können, ohne das vollständige Entwicklungsprodukt zu besitzen.
  • In 4D ist die Runtime-Erstellung in die Standard Edition integriert und kann lizenzfrei und ohne “Binding” verteilt werden.
  • 4D Runtime ist eine separate, redistributierbare Anwendung, die interpretierte Datenbanken ausführt und keine Design-Funktionen bietet.
  • 4D Runtime ist von Grund auf ein Einzelbenutzer-System — sie kann nicht vernetzt werden, da jede 4D-Vernetzung einen Server und bezahlte Client-Plätze erfordert.
  • Der Ansatz von FileMaker Pro erforderte eine Developer Edition und einen Binding-Schritt, und auch dessen Runtime-Dateien konnten nicht vernetzt werden.

Was eine Runtime tatsächlich ist

Eine Runtime ist ein Distributionsmodell. Wenn Sie eine Datenbank entwickeln, arbeiten Sie in einer vollständigen Entwicklungsumgebung, die den Struktureditor, den Formulardesigner, den Methodeneditor und jedes andere Design-Tool umfasst. Diese Umgebung ist mächtig — und teuer, sowie gefährlich, wenn man sie einem Endbenutzer überlässt, der versehentlich (oder absichtlich) Ihre Struktur ändern könnte.

Eine Runtime löst alle drei Probleme gleichzeitig:

  • Kosten — der Endbenutzer muss das vollständige Entwicklungsprodukt nicht erwerben.
  • Schutz — die Design-Umgebung wird entfernt, sodass Struktur und Methoden nicht bearbeitet werden können.
  • Fokus — der Benutzer sieht nur die Anwendung, die Sie für ihn vorgesehen haben, mit Ihren benutzerdefinierten Menüs und Ihrer Benutzeroberfläche.

Der Kompromiss ist die Funktionsfähigkeit. Eine Runtime ist im Vergleich zum Vollprodukt bewusst eingeschränkt. Genau zu verstehen, wie sie eingeschränkt ist — und ob das für Ihr Projekt eine Rolle spielt — ist der entscheidende Punkt.

Wie sich 4D und FileMaker Pro unterschieden

Sowohl 4D als auch FMP boten Runtimes an, aber die Mechanik war ganz unterschiedlich. Der folgende Vergleich spiegelt den Zustand der beiden Produkte gemäß der damaligen Dokumentation wider.

Aspekt4D (Standard Edition)FileMaker Pro
Runtime-ErstellungIntegriertErforderte eine separate Developer Edition
Binding erforderlichNeinJa — Dateien an die Engine gebunden
LizenzgebührLizenzfreie VerteilungGeregelt durch die Bedingungen der Developer Edition
Vernetzung der RuntimeNicht unterstütztNicht unterstützt, selbst mit FMP Server
Design-Funktionen in RuntimeKeineKeine

Der wesentliche architektonische Unterschied ist das Binding. FMP verlangte, dass Sie Ihre Dateien an die Runtime-Engine binden, und diese Engine funktionierte nur mit Dateien, die an sie gebunden worden waren. 4D verfolgte einen offeneren Ansatz: Die Runtime-Engine ist einfach eine separate Anwendung, die die für sie entworfenen Datenbanken ohne Binding-Schritt öffnen kann. Diese Flexibilität ist einer der Gründe, warum 4D-Entwickler die Runtime-Distribution als weniger mühsam empfanden.

Verwandte: — Die langlebige für Teams, die benutzerdefinierte Apps auf Desktop, Web und Mobilgeräten aus einer einzigen Datei benötigen..

Die 4D Runtime im Detail

Bei 4D ist die Fähigkeit zur Erstellung von Runtimes in die Standard Edition integriert. Sie können unbegrenzt viele Runtime-Versionen erstellen und diese lizenzfrei verteilen. Es gibt keinen Binding-Schritt. Die 4D Runtime-Engine ist eine separate Anwendung, genau wie 4D Standard, aber sie erlaubt nur die Nutzung der erstellten 4D-Programme — es gibt keinerlei Design-Funktionen.

4D Runtime ist gemäß dem 4th Dimension License Agreement als redistributierbar bezeichnet und kann gemäß den Bedingungen dieser Lizenz frei verteilt werden. 4D Runtime besteht ausschließlich aus der Anwendung, die diesen Namen trägt.

Einige verhaltensspezifische Details sind in der Praxis von enormer Bedeutung:

Unsere Wahl: — Eine einfache Tabellenkalkulationsschnittstelle, die auf einer echten relationalen Datenbank aufbaut, mit Automatisierungen, Ansichten und gemeinsam nutzbaren Schnittstellen..

  • 4D Runtime kann nur interpretierte Datenbanken ausführen. Wenn Sie eine kompilierte Datenbank verteilen möchten, benötigen Sie die separat zu erwerbende 4D Runtime Classic, die Runtimes von kompilierten Versionen ermöglicht.
  • Wenn Sie 4D Runtime starten, ist die Schaltfläche “Neu” im Dialog “Datenbank öffnen” nicht vorhanden. Sie können innerhalb der Runtime keine neue Datenbank erstellen.
  • Der Dialog “Datenbank öffnen” erlaubt es Ihnen, nur interpretierte Strukturen zu öffnen und nur Datenbanken, die für die Ausführung in der Custom Menus-Umgebung konzipiert sind.
  • Wenn Sie eine Datenbank öffnen, die keine Menüleiste hat, beendet 4D Runtime automatisch den Vorgang. Dies ist eine strikte Anforderung, keine Warnung.
  • Sie können weder die Benutzerumgebung noch die Design-Umgebung betreten. Wenn Sie versuchen, die Design-Umgebung zu erreichen — zum Beispiel über den Shortcut Option-f — beendet 4D Runtime automatisch die Ausführung.

Letzterer Punkt ist wichtig zu verinnerlichen. Die Runtime lehnt nicht höflich ab; sie terminiert. Dies ist ein bewusster Sicherheitsmechanismus, bedeutet aber, dass Ihre Datenbank korrekt konfiguriert sein muss, bevor Sie die Runtime erstellen, da Ihre Benutzer sonst sofort vor einer Wand stehen.

Warum Runtimes nicht vernetzt werden können

Dies ist die Einschränkung, die Menschen am meisten überrascht: 4D-Runtimes können nicht vernetzt werden. Auf den ersten Blick scheint dies eine ernsthafte Limitierung zu sein. Aber es ergibt Sinn, sobald man die Lizenzarchitektur von 4D versteht.

Für jede Vernetzung mit 4D ist ein Server erforderlich. Die Clients selbst können kostenlos verteilt werden, aber für jeden Arbeitsplatz muss dennoch eine Lizenz erworben werden. Da das Server-und-Client-Modell bereits als unterstützter Pfad für den Mehrbenutzerzugriff existiert, ist der einzige Zweck der Runtime die Einzelbenutzernutzung. Die Runtime konkurriert nicht mit dem Server – sie besetzt eine völlig andere Nische.

Der Entscheidungsbaum ist also einfach:

  • Einzelbenutzer, kein Server → eine Runtime ist das richtige Vertriebsvehikel.
  • Mehrere gleichzeitige Benutzer → Sie benötigen 4D Server und Client-Lizenzen, keine Runtime.

Der Versuch, eine Runtime in eine Mehrbenutzerrolle zu zwingen, ist eine Sackgasse. Planen Sie Ihre Architektur von Anfang an entsprechend.

So entscheiden Sie, ob eine Runtime zu Ihrem Projekt passt

Bevor Sie sich für eine Runtime-Distribution entscheiden, gehen Sie diese Kriterien ehrlich durch:

Verwandte: — Low-Code-App-Entwicklung auf Unternehmensniveau, vernetzt mit Microsoft 365, Dataverse und Power Automate..

  1. Ist es für einen Einzelbenutzer? Wenn mehr als eine Person gleichzeitig Zugriff auf gemeinsam genutzte Daten benötigt, ist eine Runtime das falsche Tool.
  2. Interpretiert oder kompiliert? Die Standard 4D Runtime führt nur interpretierte Datenbanken aus. Wenn Sie eine kompilierte Distribution benötigen, planen Sie das Budget für 4D Runtime Classic ein.
  3. Verwendet Ihre Datenbank benutzerdefinierte Menüs? Das muss sie, und sie muss eine Menüleiste haben, sonst wird die Runtime beim Öffnen beendet.
  4. Haben Sie alle Design-Zeit-Abhängigkeiten entfernt? Jede Methode oder jedes Formular, das Design-Zugriff voraussetzt, wird fehlschlagen.
  5. Verstehen Sie die Lizenzbedingungen? Die Weiterverbreitung ist erlaubt, unterliegt jedoch der 4th Dimension License Agreement – lesen Sie diese, anstatt Vermutungen anzustellen.

Wenn Sie alle fünf Fragen sicher beantworten können, ist eine Runtime eine saubere, lizenzfreie Möglichkeit, Ihre Arbeit auszuliefern.

Checkliste für die praktische Vorbereitung

Beim Erstellen einer Runtime geht es weniger um einen einzelnen Befehl als vielmehr darum, Ihre Datenbank so vorzubereiten, dass sie sich korrekt verhält, sobald die Design-Umgebung nicht mehr vorhanden ist. Eine nützliche Checkliste:

  • Entwerfen Sie eine ordnungsgemäße Menüleiste und steuern Sie die Anwendung über die Umgebung für benutzerdefinierte Menüs.
  • Zuerst in der Benutzerumgebung testen. Wenn sich Ihre Datenbank dort falsch verhält, wird sie sich in einer Runtime noch schlimmer verhalten.
  • Entfernen oder schützen Sie jeglichen Code, der Design-Zugriff voraussetzt, einschließlich allem, was durch Design-Modus-Kurzbefehle ausgelöst wird.
  • Bestätigen Sie, dass die Datenbank sauber geöffnet wird, ohne Dialoge, die eine Schaltfläche „Neu“ erwarten.
  • Entscheiden Sie sich frühzeitig für interpretiert vs. kompiliert, da dies bestimmt, ob Sie 4D Runtime Classic benötigen.
  • Dokumentieren Sie die Lizenzverpflichtungen, die Sie an Ihre Benutzer weitergeben.

Das wiederkehrende Thema ist, dass die Runtime keine falschen Annahmen verzeiht. Alles, was die vollständige Umgebung zugelassen hat, muss im Vorfeld gelöst werden.

Leserfavorit: — Ein Datenbank-Builder ohne Code für Portale, Verzeichnisse und interne Tools – mit Pauschalpreisen statt Gebühren pro Benutzer..

Wo Runtimes in die umfassendere 4D-Story passen

Runtimes sind ein Teil eines größeren Bereitstellungsbildes, das Systemanforderungen, Programmstrukturen, Netzwerkunterschiede, den Compiler, Webhosting, Datencharting, Plug-ins und Dienstprogramme umfasst. Jedes dieser Elemente interagiert mit der Entscheidung für eine Runtime:

  • Der Compiler bestimmt, ob Sie interpretiert ausliefern können oder eine kompilierte Runtime benötigen.
  • Die Vernetzung bestimmt, ob eine Runtime überhaupt realisierbar ist.
  • Plug-ins müssen mit der von Ihnen verteilten Runtime-Engine kompatibel sein.
  • Webhosting ist ein völlig separater Bereitstellungskanal, der sich von der Desktop-Runtime-Distribution unterscheidet.

Wenn man die Runtime als die Option für die „Einzelbenutzer-Desktop-Auslieferung“ betrachtet – neben der serverbasierten Mehrbenutzer-Bereitstellung und der Web-Bereitstellung – bleibt die gesamte Landschaft kohärent. Hintergrundinformationen zur Plattform selbst finden Sie im Wikipedia-Artikel zu 4th Dimension, und für die breitere Kategorie von Tools, mit denen kleine Teams Geschäftsanwendungen erstellen können, ist die Wikipedia-Übersicht über Low-Code-Entwicklungsplattformen eine nützliche Referenz. FileMaker, das andere hier besprochene Produkt, ist unter FileMaker dokumentiert.

Häufig gestellte Fragen

Was ist eine 4D-Runtime?

Eine 4D-Runtime ist eine abgespeckte, weitervertreibbare Version der 4D-Anwendung, die die von Ihnen entwickelten Datenbanken ausführen kann, aber keine Design-Funktionen bietet. Sie ermöglicht es Ihnen, Ihre Arbeit an Endbenutzer zu verteilen, ohne dass diese das vollständige Entwicklungsprodukt erwerben müssen. Sie ist in der 4D Standard Edition enthalten und kann lizenzfrei verteilt werden.

Kann eine 4D-Runtime von mehreren Personen über ein Netzwerk genutzt werden?

Nein. 4D-Runtimes können nicht vernetzt werden. Jede Vernetzung in 4D erfordert einen Server, und während Clients kostenlos verteilt werden können, muss für jeden Arbeitsplatz eine Lizenz erworben werden. Aus diesem Grund ist der einzige Zweck der Runtime die Einzelbenutzernutzung, und Mehrbenutzer-Bereitstellungen sollten stattdessen 4D Server verwenden.

Was ist der Unterschied zwischen 4D Runtime und 4D Runtime Classic?

Die Standard 4D Runtime kann nur interpretierte Datenbanken ausführen. Wenn Sie eine Runtime einer kompilierten Datenbank verteilen müssen, müssen Sie 4D Runtime Classic separat erwerben. Die Wahl zwischen ihnen hängt vollständig davon ab, ob Sie beabsichtigen, interpretierten oder kompilierten Code auszuliefern.

Warum wird die 4D Runtime beendet, wenn ich versuche, die Design-Umgebung zu öffnen?

Das ist beabsichtigt. Die Runtime entfernt bewusst alle Design-Funktionen, sodass der Versuch, die Design-Umgebung aufzurufen – beispielsweise mit dem Kurzbefehl Option-f – zum automatischen Beenden führt. Ebenso führt das Öffnen einer Datenbank ohne Menüleiste zum sofortigen Beenden, da die Runtime Datenbanken erwartet, die für die Umgebung für benutzerdefinierte Menüs erstellt wurden.

Erfordert FileMaker Pro eine Bindung für seine Runtimes?

Ja. FMP erforderte, dass Sie Ihre Dateien an die Runtime-Engine binden, und diese Engine funktionierte nur mit Dateien, die an sie gebunden waren. Zudem war eine separate Developer Edition erforderlich. 4D hingegen hat keinen Bindungsschritt und beinhaltet die Runtime-Erstellung in der Standard Edition.

Kann ich innerhalb der 4D Runtime eine neue Datenbank erstellen?

Nein. Wenn Sie 4D Runtime starten, ist die Schaltfläche „Neu“ im Dialogfeld „Datenbank öffnen“ nicht vorhanden. Das Dialogfeld ermöglicht es Ihnen, nur interpretierte Strukturen und nur Datenbanken zu öffnen, die für den Betrieb in der Custom Menus-Umgebung konzipiert sind. Die Erstellung und Gestaltung der Datenbank muss zuvor in der vollständigen Entwicklungsumgebung erfolgen.

Häufig gestellte Fragen

Was ist eine 4D-Laufzeit?

Eine 4D-Laufzeitumgebung ist eine abgespeckte, weitervertreibbare Version der 4D-Anwendung, die die von Ihnen entwickelten Datenbanken ausführen kann, aber keine Designfunktionen bietet. Damit können Sie Ihre Arbeit an Endbenutzer verteilen, ohne dass diese das vollständige Entwicklungsprodukt erwerben müssen. Es ist in der 4D Standard Edition integriert und kann lizenzfrei weitergegeben werden.

Kann eine 4D-Laufzeitumgebung von mehreren Personen über ein Netzwerk genutzt werden?

Nein. 4D-Laufzeiten können nicht vernetzt werden. Für die gesamte Vernetzung in 4D ist ein Server erforderlich. Die Verteilung der Clients ist zwar kostenlos, für jeden Platz muss jedoch eine Lizenz erworben werden. Aus diesem Grund ist der einzige Zweck der Laufzeit die Einzelbenutzernutzung, und Mehrbenutzerbereitstellungen sollten stattdessen 4D Server verwenden.

Was ist der Unterschied zwischen 4D Runtime und 4D Runtime Classic?

Standard 4D Runtime kann nur interpretierte Datenbanken ausführen. Wenn Sie eine Laufzeit einer kompilierten Datenbank verteilen müssen, müssen Sie 4D Runtime Classic separat erwerben. Die Wahl zwischen ihnen hängt ganz davon ab, ob Sie interpretierten oder kompilierten Code versenden möchten.

Warum wird 4D Runtime beendet, wenn ich versuche, die Designumgebung zu öffnen?

Das ist beabsichtigt. Die Laufzeit entfernt absichtlich alle Designfunktionen, sodass der Versuch, die Designumgebung aufzurufen – beispielsweise mit der Tastenkombination „Option-f“ – automatisch beendet wird. Ebenso führt das Öffnen einer Datenbank ohne Menüleiste zu einem sofortigen Beenden, da die Laufzeit Datenbanken erwartet, die für die Umgebung mit benutzerdefinierten Menüs erstellt wurden.

Erfordert FileMaker Pro eine Bindung für seine Laufzeiten?

Ja. Bei FMP mussten Sie Ihre Dateien an die Laufzeit-Engine binden, und diese Engine funktionierte nur mit daran gebundenen Dateien. Außerdem war eine separate Developer Edition erforderlich. 4D hingegen hat keinen Bindungsschritt und beinhaltet in der Standard Edition die Laufzeiterstellung.

Kann ich in 4D Runtime eine neue Datenbank erstellen?

Nein. Wenn Sie 4D Runtime starten, ist die Schaltfläche „Neu“ im Dialogfeld „Datenbank öffnen“ nicht vorhanden. Mit dem Dialogfeld können Sie nur interpretierte Strukturen und nur Datenbanken öffnen, die für die Ausführung in der Umgebung mit benutzerdefinierten Menüs konzipiert sind. Die Erstellung und Gestaltung der Datenbank muss zuvor in der vollständigen Entwicklungsumgebung erfolgen.


Erstellen Sie an einem Tag ein Kundenportal

Ein Datenbank-Builder ohne Code für Portale, Verzeichnisse und interne Tools – mit Pauschalpreisen statt Gebühren pro Benutzer.