In der Definition eines Tabellengitters wird eine URL angegeben, über die sich das Tabellengitter je nach Bedarf die Daten zur Darstellung holt.
Dies geschieht z.B. jedes Mal beim Blättern, Suchen, Sortieren oder Aktualisieren durch den Benutzer.
Dabei wird vom Tabellengitter ein Datenobjekt vom Typ TableRequest (WEB:TableRequest) mit übergeben. Dieses Datenobjekt enthält alle notwendigen Daten, die die Anfrage beschreiben.Als Ergebnis erwartet das Tabellengitter eine sogenannte JSON Datenstruktur, die die einzelnen Zeilen mit ihren Daten und optional die Fußzeilendaten enthält.
Die Datenstruktur ist Beispielhaft wie folgt aufgebaut:
{
"total" : "5",
"page" : "1",
"records" : "44",
"rows" : [
{
"id" : "ALL",
"cell" : [ "ALL", "ALL", "Lek" ]
},
{
"id" : "AUD",
"cell" : [ "AUD", "AUD", "Australischer Dollar" ] },
{
"id" : "BAM",
"cell" : [ "BAM", "BAM", "Bosnisch-Herz. Mark" ]
} ],
"userdata" : {
"CURRENCY_CURR" : "Footer Cell Curr",
"CURRENCY_NAME" : "Footer Cell Name" }
}
In diesem Beispiel werden 3 Datenzeilen mit jeweils 3 Spalten sowie eine Fußzeile mit zwei Spalten zurückgegeben.
Die einzelnen Felder haben die folgende Bedeutung:
- Total: Anzahl der Seiten insgesamt
- Page: Die aktuelle Seite
- Records: Die Anzahl der Datensätze insgesamt (nicht die der Seite)
- ID: Die eindeutige Zeilen-Id, üblicherweise der Primärschlüssel der Tabelle.
- Cell: Eine Liste der einzelnen Zellenwerte der Zeile, von links nach rechts.
- Userdata: Optional, die Fußzeile. Es folgen jeweils Spaltenname und Wert für die Fußzeile.
Im WEB Paket befinden sich allerdings Kommandos, um die Erstellung und Rückgabe dieser Datenstruktur zu vereinfachen. Zudem wurden die SQL und anderen Datenbankfunktionen der DLE so erweitert, dass eine einfache Bereitstellung der Daten im Brick möglich ist.
Zum Beispiel kann die vom Tabellengitter übergebene Suchbedingung einfach in eine beliebige SQL oder Where-Bedingung eines DLE Kommandos übergeben werden, die DLE Datenbankkommandos verstehen diese und setzen sie intern automatisch in SQL Syntax um. Dabei wird zudem auf die Sicherheit geachtet, eine Injektion von z.B. schädlichem SQL von außen durch den Benutzer der Webanwendung ist in diesem Fall nicht möglich.
Außerdem wurde das Standard DLE Kommando „Schleife DB (Expert)“ so erweitert, das damit einfach seitenweise selektiert werden kann und auch direkt die Gesamtzahl der selektierten Zeilen ermittelt werden kann:

