easydb Creator Grundlagen

Den easydb Creator erreichen Sie über die URL http[s]://<easydb>/creator. Sie benötigen dafür das CREATOR -Recht.

Jede easydb besteht aus folgenden zentralen funktionalen Bereichen:

  • Suche von Objekten
  • Anzeige von Objekten
  • Anlegen / Editieren von Objekten

Ein Datenbank-Objekt wird in der zugrundeliegenden Datenbank in SQL-Datenbank-Tabellen abgelegt. Bei den Objekten kann es sich um komplexere Strukturen handeln die in mehr als einer Datenbank-Tabelle abgelegt werden. Der Artikel Datenmodellierung in der easydb macht Sie damit vertraut.

Masks, Grids, Cells

1
2
Grid
Cell 0 / 0
Cell 0 / 1
Cell 1 / 0
Cell 1 / 1
Content-Driver
3
4
5

Zentrales Element der easydb sind die sogenannten Masken oder Masks (engl. Mask) 1. Masks werden von den easydb Drivern 2 ausgegeben (gerendert).

Eine Mask ist ein Rasterfeld ( Grid ) mit Reihen ( Rows ) und Spalten ( Columns oder Cols ) Grid, in jedem Feld des Rasters befindet sich eine Zelle ( Cell ) Cell.

Jede ausgefüllte Cell Cell 0 / 0 enthält einen Content-Driver Content-Driver. Der spezielle Content-Driver GRID steckt in die Cell Cell 1 / 1 ein weiteres Grid, so dass sich verschachtelte Grids ergeben 3.

Jedes Grid hat einen Typ und bestimmt damit die Art und Weise des Renderns. Im Beispiel hat das oberste Grid den Typ PLAIN und das in Cell 1 / 1 befindliche Grid den Typ TABLE.

Der einfachste Typ grid/PLAIN dient einfach nur der Sammlung von Cells, die hintereinander aufgerufen werden: Zuerst die Row 0 mit allen Cols, danach die Row 1 mit allen Cols usw. Jede ausgefüllte Cell enthält einen Content-Driver der innerhalb der Cell irgendetwas ausgibt. So gibt der Content-Driver cell/TEXT einfach nur Text aus.

Der Typ grid/TABLE interpretiert das Grid und die darin befindlichen Cells als Tabelle und gibt eine HTML-TABLE aus, für jede Row des Grids wird eine TR und für jede Col eine TD ausgegeben.

Der Typ grid/IFTHEN interpretiert das Grid so, dass er die Cell 0/1 (Zeile 0, Spalte 1) nur dann rendert, wenn Cell 0/0 in ihrem Content-Driver irgendetwas ausgibt.

Der Content-Driver 4 bestimmt das Rendern in der Cell 0/0. Im Beispiel handelt es sich um den driver/TEXT der einfach nur Hello World ausgibt. Dieser Text 5 wird in den Eigenschaften der Cell 0/0 eingegeben und mit Save gespeichert.

Unser im Screenshot gezeigtes Beispiel gibt das folgende HTML aus:

Hello World
<table>
  <tr>
    <td>0/0</td>
    <td>0/1</td>
  </tr>
  <tr>
    <td>1/0</td>
    <td>1/1</td>
  </tr>
</table>

Verschiedene Driver erfüllen verschiedene Aufgaben. Der im Beispiel benutzte driver/index wird benutzt, um Seiten ohne weitere Funktion auszugeben. Für Seiten mit mehr Funktionalität gibt es spezialisierte Driver. Die wichtigsten Driver dienen zum Suchen driver/search von Objekten, der Anzeige von Objekten driver/detail und driver/result, und dem Editieren von Objekten driver/edit.

Am Anfang steht ein driver/index

Wenn die easydb mit der Basis-URL / aufgerufen wird, beginnt das Rendern über einem im Stringtool definierten Key INDEX GRID. Darin steht der Name der driver/index-Mask, die gerendert werden soll. Sollte die easydb Authentifizierung verlangen, so beginnt das Rendern über den Key INDEX LOGIN GRID.

In der INDEX LOGIN GRID driver/index-Mask kann über den driver/login ein Login-Formular gebaut werden, welches den Benutzer authentifiziert. Die Weiterleitung auf eine andere Maske nach erfolgreichem Login erfolgt über das "grid/FUNCTION-login/login_form:"../reference/driver/login/.

Um von einer Maske zu einer weiteren zu gelangen benutzen Sie grid/LINK-driver/<driver>. Damit kann beispielsweise aus einem Objekt-Anzeige innerhalb einer driver/result -Maske in eine Detail-Ansicht driver/detail -Maske gesprungen werden.