Web Server, Einstieg

4D - Documentation   Français   English   German   4D Programmiersprache, Befehle nach Themen   4D Programmiersprache, Befehle alphabetisch   4D Programmiersprache, Konstanten nach Themen   Back   Previous   Next

Version 6.5 (Geändert)


Beispiel im kontextuellen Modus

Dieser Abschnitt zeigt ein einfaches Beispiel für die unmittelbare Veröffentlichung der Datenbank im kontextuellen Modus. Dieser automatische Modus eignet sich besonders für Intranet Server. Das Beispiel erläutert die grundlegende Arbeitsweise des 4D Web Server.

Die Datenbank hat eine ganz einfache Struktur: Sie besteht aus einer Tabelle, einem Eingabe- und einem Ausgabeformular sowie einer Menüleiste. Die Home Page ist angepasst. Die Datenbank wird als Web Server veröffentlicht.

1. Verbindung mit der Datenbank des Web Servers

Stellen Sie die Verbindung zum gerade gestarteten Web Server her. Öffnen Sie die Datenbank auf einem Web Browser, der auf einem zweiten Rechner läuft. Je nach benutzter Datenbank und Browser erhalten Sie ein Bild wie:

2. Die Datensätze anzeigen und durchlaufen

Klicken Sie auf den Link Datensätze anzeigen. Sie erhalten eine Web Seite, die dem 4D Bildschirm Ausgabe entspricht:

Sie können nun die Datensätze beliebig durchlaufen. Klicken Sie links unten auf das Kästchen mit dem roten Kreuz, gelangen Sie wieder auf die Home Page im Web.

3. Datensätze hinzufügen

Klicken Sie im Web auf der Home Page auf den Link Datensätze hinzufügen. Sie erhalten eine Web Seite, die dem 4D Bildschirm Eingabe entspricht:

Sie können beliebig viele Datensätze hinzufügen. Wenn Sie fertig sind, klicken Sie erneut auf das Kästchen mit dem roten Kreuz. Sie gelangen wieder auf die Home Page im Web.

4. Datensätze im Hauptmenü anzeigen oder hinzufügen

Klicken Sie auf der Home Page links unten auf die Schaltfläche Gehe zur Hauptmenüleiste. Damit verlassen Sie die Home Page. Sie erhalten die Web Seiten, die der Menüleiste der 4D Anwendung entspricht:

Sie können nun auf jede Menüzeile klicken, also Datensätze auflisten oder hinzufügen. Den Menüzeilen sind dieselben 4D Methoden zugewiesen wie den Links auf der Home Page.

5. Die Verbindung beenden

Sind Sie fertig, verlassen Sie Ihren Browser. 4D beendet die Web Verbindung, sobald die Zeitspanne für das Timeout abgelaufen ist.

Eine Web Verbindung starten

Immer wenn sich ein Web Browser mit einer 4D Datenbank verbindet, die als Web Server publiziert wird, führt 4D folgende Aktionen aus:

Sofern vorhanden, wird die Datenbankmethode On Web Authentication ausgeführt.

Gibt diese Methode Wahr zurück oder ist sie nicht vorhanden, wird – sofern vorhanden – die Datenbankmethode On Web Connection ausgeführt.

Gibt es keine solche Methode oder ist die Methode bereits abgeschlossen, zeigt 4D – sofern vorhanden – die in den Einstellungen der Datenbank definierte Home Page an.

Wurde keine Home Page definiert, zeigt 4D – sofern vorhanden – die aktuelle Menüleiste an, standardmässig Menüleiste Nr. 1.

Gibt es weder eine Standard Home Page noch eine Menüleiste, zeigt 4th Dimension eine Standard Web Seite an mit der Meldung: "Diese Datenbank wurde noch nicht für das Web eingerichtet."

Im folgenden sehen Sie dazu eine Übersicht:

Die Datenbankmethode On Web connection kann jede der Projektmethoden oder Formulare aus der Datenbank sowie HTML Seiten aufrufen. Die Datenbankmethode kann sogar die gesamte Sitzung verwalten.

Eine Web Verbindung zu 4D oder 4D Server ist nicht dasselbe wie eine Client/Server Verbindung. Das HTTP Protokoll für HTML und Web basiert nicht auf einer Sitzung, sondern vielmehr auf einer Anfrage. Im Client/Server-Betrieb melden Sie sich am Server an, arbeiten in einer Sitzung und melden sich vom Server ab. Mit HTTP wird mit jedem Ausführen einer Aktion, die den Web Server beansprucht, eine Anfrage an den Server gesendet. Mit anderen Worten, eine HTTP Anfrage ist die Abfolge "Anmelden+Anfrage+Warten auf Antwort+Abmelden".

Damit eine Client/Server Sitzung im kontextuellen Modus auf HTTP läuft, unterhält 4D über eine transparente Codierung der URLs, d.h. einen Kontext, der allein Ihre Web Verbindung identifiziert und die Verbindung gleichzeitig dem dazugehörigen 4D Prozess zuweist.

4D kann jedoch keine Entsprechung für die Abmeldung im Client/Server-Betrieb zur Verfügung stellen, die eine Sitzung beendet. Aus diesem Grund wird das Beenden einer Sitzung im Client/Server-Betrieb über ein Timeout Schema gesteuert. Der 4D Prozess zum Steuern der Web Verbindung endet, wenn er eine bestimmte Zeit lang keine Aktivität feststellt. Diese Zeit entspricht der Timeout-Einstellung für die Web Datenbank.

Datenbank und Web Server in Einem

Sie können die Sitzung eines 4D Web Servers vollkommen über 4D Menüleisten, Formulare und Methoden steuern. Im oben erwähnten Beispiel wurde das Auflisten und Hinzufügen von Datensätzen durch einfache 4D Methoden und Formulare ausgeführt. Wenn wir keine HTML Home Page eingefügt haben, zeigt der Web Browser bei zustandegekommener Verbindung die Menüleiste #1.

Entfernen wir die HTML Home Page, wird beim Aufbau einer 4D Datenbank unter Windows oder auf Macintosh für einen oder mehrere Benutzer gleichzeitig ein Web Server eingerichtet, der Client/Server Transaktionen in einer Datenbank unterstützt. Nachfolgende Schritte erläutern, wie Sie die Beispieldatenbank auf diese Weise erstellen.

Wir gehen von folgender Struktur der Beispieldatenbank aus:

Es werden Eingabe- und Ausgabeformulare hinzugefügt, damit Sie mit Datensätzen arbeiten können.

Die Menüleiste #1 wird hinzugefügt, damit Sie mit eigenen Menüs arbeiten und Web Verbindungen unterstützen können.

Es werden folgende Projektmethoden geschrieben:

      ` Projektmethode M_ADD_RECORDS
   C_TEXT($1)   ` Dieser Parameter muss explizit deklariert werden
   Repeat
      ADD RECORD ([Clients])
   Until (OK=0)

      ` Projektmethode M_LIST RECORDS
   C_TEXT($1)   ` Dieser Parameter muss explizit deklariert werden
   ALL_RECORDS ([Clients])
   MODIFY SELECTION ([Clients])

Das Attribut "Starte neuen Prozess" wird jeder Methode zugewiesen.

Der Web Server startet im nicht-kontextuellen Modus. In den Einstellungen der Datenbank wird eine Standard Home Page definiert.

Die Home Page enthält die beiden Links "Datensätze hinzufügen" und "Datensätze anzeigen", die die Ausführung der 4D Projektmethoden M_ADD_RECORDS und M_LIST_RECORDS über ihre URL durchlaufen. Das Prinzip ist denkbar einfach: Jedes HTML Objekt lässt sich mit der URL "/4DMETHOD/Methodenname" mit einer Projektmethode Ihrer Datenbank verbinden.

Sie müssen jeder Methode, die mit 4D METHOD aufgerufen wird, das Attribut "Zugang per 4DACTION, 4DMETHOD und 4DSCRIPT" zuweisen.

Sind diese Links definiert, führt 4D die Projektmethode aus, die hinter dem Schlüsselwort /4DMETHOD/ liegt, wenn der Web Browser die URL zurücksendet. Nach Ausführen der Projektmethode gelangen Sie wieder in die HTML Seite, die sie ausgelöst hat. Beachten Sie, dass die Projektmethode selbst 4D Formulare, andere HTML Seiten, usw. anzeigen kann.

Ihre auf 4D basierende Web Site kann vollkommen auf 4D basieren oder eine Kombination aus 4D Formularen und HTML Seiten sein. Auf diese Weise können Sie sowohl von der 4D als auch von der HTML Umgebung profitieren. Sie müssen jedoch nicht zwingenderweise HTML Seiten verwenden.

Das HTML Dokument in diesem Beispiel enthält eine Schaltfläche zum Übertragen eines Datensatzes. Es gibt drei Arten von HTML Schaltflächen: Normal, Übertragen und Zurücksetzen.

Normal - Dieser Schaltflächentyp kann einer URL zugewiesen werden, die über das Schlüsselwort /4DMETHOD/ auf eine 4D Methode verweist. Schaltflächen vom Typ normal sind zum Navigieren bestimmt.

Übertragen - Dieser Schaltflächentyp überträgt das Formular mit den Werten, die der Benutzer – sofern vorhanden – im Web Server eingegeben hat. Schaltflächen vom Typ Übertragen sind nützlich zum Verwalten der Dateneingabe, die Sie lieber über eine HTML Seite ausführen möchten anstatt über ein vollwertiges 4D Formular.

Zurücksetzen - Dieser Schaltflächentyp hat innerhalb einer 4D Entwicklung wenig Nutzen: Er setzt das Formular auf die Werte zurück, die der Benutzer – sofern vorhanden – eingegeben hat und sendet keine Antwort an den Server.

Zum Integrieren von HTML Seiten in 4D verwenden Sie vorrangig Schaltflächen vom Typ Normal oder Submit. Der Code der Schaltfläche Home Page lautet:

INPUT TYPE="SUBMIT"NAME="/4DMETHOD/GO_MAIN_MENUBAR".

Zum Übertragen des HTML Formulars in 4D müssen Sie die 4D Methode POST Aktion spezifizieren, die 4D nach der Übertragung des Formulars ausführt. Sie muss die Zeile

FORM ACTION="/4DMETHOD/GO_MAIN_MENU_BAR"METHOD="POST" enthalten

Die Methode GO_MAIN_MENU_BAR lautet:

   SET HOME PAGE("")

Diese Methode hat für unser Beispiel nur den Zweck, die aktuelle Standard Home Page zu verlassen, die im Web Browser angezeigt wird, und dann die aktuelle Menüleiste zu senden. 4D wechselt zur Menüleiste # 1 der Datenbank.

Das ist alles!

Sie haben in weniger als fünf Minuten eine 4D Datenbank erstellt, die sowohl eine lokale Datenbank als auch ein Web Server ist, den Sie in Ihrem Intranet Netzwerk bzw. im Internet publizieren können.

Referenz

SEND HTML FILE, SET WEB DISPLAY LIMITS, SET WEB TIMEOUT, START WEB SERVER, STOP WEB SERVER.


4D - Documentation   Français   English   German   4D Programmiersprache, Befehle nach Themen   4D Programmiersprache, Befehle alphabetisch   4D Programmiersprache, Konstanten nach Themen   Back   Previous   Next