Read- und WriteContainer bilden eine Abstraktionsschicht, mit der auf den Seiten einer
Applikation definiert werden kann, welche Daten gelesen bzw. wohin geschrieben werden.
Mit ReadContainern werden Daten gelesen, mit WriteContainern werden Daten geschrieben.
Die Bereiche "ReadContainer" und "WriteContainer" können über das
Hauptmenü Ansicht ein- bzw. ausgeblendet werden.
Wenn Sie eine Applikationsseite in der
Applikationsstruktur
auswählen, zeigt der Read- bzw. WriteContainer-Bereich an, welche Container für diese Seite
definiert sind. Beide Container-Typen haben grundsätzlich den gleichen Aufbau. Sie sind unterteilt in
Eigenschaften
Filterkriterien
Bindings
Mit einem ReadContainer werden die Daten aus der Datengruppe gelesen, in der sich die jeweilige
Applikationsseite befindet. Mit WriteContainern können Daten in beliebige Datengruppen
aus derselben Applikation geschrieben werden. Es ist auch möglich, mit benutzerdefinierten
Read- bzw. WriteContainern eigene Java-Klassen einzubinden. Informationen zu diesem Thema erhalten Sie in unseren
Academy-Seminaren.
2. ReadContainer
2.1. Allgemeines
Jede Applikationsseite hat für die Datengruppe, in der sie liegt, genau einen ReadContainer.
Ausnahme sind die Ansichtsseiten
auf der ersten Ebene in der Applikationsstruktur
(direkt unterhalb des Applikationsknotens)
und Seiten einer Systemdatengruppe.
Hier gibt es keine ReadContainer, es können auch keine erstellt werden.
2.2. ReadContainer erstellen
Zusätzlich zu dem bereits definierten ReadContainer von Applikationsseiten, die
sich in einer Datengruppe befinden, können benutzerdefinierte ReadContainer erzeugt werden,
die das Einbinden von eigenen Java-Klassen ermöglichen.
ReadContainer hinzufügen
Öffnet einen Dialog,
in dem ein neuer benutzerdefinierter ReadContainer erstellt werden kann.
ReadContainer löschen
Löscht den aktuell ausgewählten ReadContainer.
ReadContainer nach oben / unten
Ändert die Reihenfolge der Container.
2.3. ReadContainer für Frei gestaltete Tabellen
Für jede Frei gestaltete Tabelle
wird genau ein ReadContainer mit dem Typ "multiInput" auf der Seite angelegt,
auf der sich die frei gestaltete Tabelle befindet.
2.4. Eigenschaften
Unterhalb der ReadContainer-Liste finden Sie die Eigenschaften des aktuell
ausgewählten Containers, die Sie mit einem Klick ein- bzw. ausblenden können.
Name
Zeigt den Namen des ReadContainers an.
Typ
Zeigt den Typ des ReadContainers an:
dataGroup
Der dataGroup-Typ wird für den Standard-ReadContainer verwendet, der automatisch für jede Applikationsseite angelegt wird,
die sich in einer Datengruppe befindet. Der Name eines solchen ReadContainers wird aus dem
Präfix "READ_" und dem Namen der Datengruppe gebildet.
Grundsätzlich wird der dataGroup-Typ für Container verwendet, die die Daten einer Datengruppe
bereitstellen.
multiInput
Dieser Typ wird für Frei gestaltete Tabellen, die sich auf der Seite befinden, verwendet. Auch dieser ReadContainer-Typ
wird automatisch angelegt, wenn eine Frei gestaltete Tabelle angelegt wird. Der Name wird
aus dem Präfix "READ_" und der
GUID der Frei gestalteten Tabelle gebildet.
userdefined
Dieser Typ wird für ReadContainer verwendet, die eigene Java-Klassen einbinden.
Applikation / Datengruppe
Zeigt die Applikation und Datengruppe an, deren Daten von ReadContainer gelesen werden.
2.5. Filterkriterien
Unterhalb der Eigenschaften finden Sie die Filterkriterien des aktuell
ausgewählten ReadContainers, die Sie beim Typ "dataGroup" oder "userdefined" mit einem Klick ein- bzw. ausblenden können.
Beim Typ "dataGroup" sind diese Kriterien in der Regel bereits sinnvoll vorbelegt.
Mit den Filterkriterien wird der Seite mitgeteilt, welcher Datensatz angezeigt werden soll.
Die Einschränkung der Daten mit Filterkriterien entspricht der WHERE-Klausel im
SELECT-Statement bei der Datenbankabfrage. Da eine Seite in einer Datengruppe nur einen
einzigen Datensatz anzeigen soll, sind hier bei der
Bearbeitung
der Filterkriterien nicht in jeder Situation alle Kombinationen
von Quell- und Zielwerten wählbar. Damit wird vermieden, dass eine Abfrage mehr als
einen Datensatz liefert, was einen Fehler beim Laden der Seite verursachen würde.
Beim Typ "multiInput" sind die Filterkriterien deaktiviert,
da die Anzeige der Daten in einer Frei gestalteten Tabelle von den in ihr eingebundenen
Seiten geregelt wird.
Spalte "Quelle"
Zeigt die Quelle des Filterkriteriums an.
Die Quelle entspricht dem Wert, auf den die Daten der Datengruppe
gefiltert werden sollen.
Spalte "Ziel"
Zeigt das Ziel an, mit dem die in der Quelle definierten Werte verglichen werden.
Bei Übereinstimmung wird der entsprechende Datensatz angezeigt.
Filterkriterium bearbeiten
Blendet die Seite ein,
auf der die Filterkriterien bearbeitet werden können. Die Hilfe zu den Einstellungen auf dieser
Seite erreichen Sie dann mit Klick auf das
Fragezeichensymbol.
2.6. Bindings
Bindings verknüpfen die per ReadContainer gelesenen Daten mit den
Applikationselementen auf der Seite.
Hier werden alle Applikationselemente aufgelistet, die ein
Binding
besitzen.
Zeigt den Datentyp des mit dem Element verbundenen Datenfeldes an.
Binding löschen
Löscht das aktuell markierte Binding.
3. WriteContainer
3.1. Allgemeines
Für jede Applikationsseite wird automatisch für die Datengruppe, in der sie liegt, ein WriteContainer
erzeugt. WriteContainer können auf allen Seiten außer auf Ansichtsseiten
auf der ersten Ebene in der Applikationsstruktur
(direkt unterhalb des Applikationsknotens) angelegt werden.
Ohne WriteContainer auf einer Seite kann der Datensatz nicht gelöscht werden.
3.2. WriteContainer erstellen
Zusätzlich zu dem bereits definierten WriteContainer von Applikationsseiten, die
sich in einer Datengruppe befinden, kann eine beliebige Anzahl von WriteContainern erzeugt werden.
WriteContainer hinzufügen
Öffnet einen Dialog,
in dem ein neuer WriteContainer erstellt werden kann.
WriteContainer löschen
Löscht den aktuell ausgewählten WriteContainer.
WriteContainer nach oben / unten
Ändert die Reihenfolge der Container.
3.3. WriteContainer für Frei gestaltete Tabellen
Für jede Frei gestaltete Tabelle
wird genau ein WriteContainer mit dem Typ "multiInput" auf der Seite angelegt,
auf der sich die frei gestaltete Tabelle befindet.
3.4. Eigenschaften
Die Eigenschaften des WriteContainers entsprechen den Eigenschaften des
ReadContainers.
Prozess auslösen
Zusätzlich gibt es beim WriteContaine die Einstellung "Prozess auslösen". Die Einstellung ist
bereits aktiviert, wenn ein WriteContainer angelegt wird. Sie bewirkt, dass
Datengruppen-Ereignisbehandler,
die auf die gleiche Datengruppe hören wie der WriteContainer, automatisch gestartet werden, wenn im Browser die
Aktionen
Datensatz hinzufügen, speichern oder löschen auf der Seite, die den WriteContainer enthält, ausgeführt werden.
Ist die Einstellung nicht gesetzt, reagiert der Ereignisbehandler nicht und löst auch die folgenden Prozessschritte nicht aus. Die Einstellung
ist z.B. hilfreich bei Assistenten, die den Benutzer im Browser durch mehrere Eingabeseiten führen. Mit ihr
kann geregelt werden, dass der Ereignisbehandler erst mit dem Speichern der letzten Seite des Assistenten
ausgelöst wird.
3.5. Filterkriterien
Unterhalb der Eigenschaften finden Sie die Filterkriterien des aktuell
ausgewählten WriteContainers, die Sie beim Typ "dataGroup" oder "userdefined" mit einem Klick ein- bzw. ausblenden können.
Beim Typ "dataGroup" sind diese Kriterien in der Regel bereits sinnvoll vorbelegt.
Mit den Filterkriterien wird der Seite mitgeteilt, welcher Datensatz gespeichert werden soll.
Die Einschränkung der Daten mit Filterkriterien entspricht der WHERE-Klausel im
UPDATE-Statement bei der Datenbankabfrage. Da eine Seite in einer Datengruppe nur einen
einzigen Datensatz schreiben soll, sind hier bei der
Bearbeitung
der Filterkriterien nicht in jeder Situation alle Kombinationen
von Quell- und Zielwerten wählbar. Damit wird vermieden, dass eine Anfrage mehr als
einen Datensatz bearbeitet, was einen Fehler beim Speichern der Seite verursachen würde.
Beim Typ "multiInput" sind die Filterkriterien deaktiviert,
da das Schreiben der Daten in einer Frei gestalteten Tabelle von den in ihr eingebundenen
Seiten geregelt wird.
Spalte "Quelle"
Zeigt die Quelle des Filterkriteriums an.
Die Quelle entspricht dem Wert, auf den die Daten der Datengruppe
gefiltert werden sollen.
Spalte "Ziel"
Zeigt das Ziel an, mit dem die in der Quelle definierten Werte verglichen werden.
Bei Übereinstimmung wird der entsprechende Datensatz für das Schreiben der Daten ausgewählt.
Filterkriterium bearbeiten
Blendet die Seite ein,
auf der die Filterkriterien bearbeitet werden können. Die Hilfe zu den Einstellungen auf dieser
Seite erreichen Sie dann mit Klick auf das
Fragezeichensymbol.
3.6. Bindings
Hier können alle Applikationselemente hinzugefügt oder bearbeitet werden, die ein
Binding
besitzen. Elemente können von der Arbeitsfläche
aus auch per Drag & Drop in den Bindings-Bereich bewegt werden.
Zeigt den Datentyp des mit dem Element verbundenen Datenfeldes an.
Binding hinzufügen
Blendet eine Seite ein,
auf der ein neues Binding erstellt werden kann. Die Hilfe zu den Einstellungen auf dieser
Seite erreichen Sie dann mit Klick auf das
Fragezeichensymbol.
Binding bearbeiten
Blendet eine Seite ein,
auf der ein bestehendes Binding bearbeitet werden kann. Die Hilfe zu den Einstellungen auf dieser
Seite erreichen Sie dann mit Klick auf das
Fragezeichensymbol.
Binding löschen
Löscht das aktuell markierte Binding.