Variablen
Welche Variablen zur Verfügung stehen, hängt davon ab, an welcher Stelle vSQL eingesetzt wird. Insgesamt gibt es folgende Variablen:
userBenutzerDer eingeloggte Benutzer ist immer über die vSQL-Variable
userzugänglich, d.h. dass z.B.user.firstnameder Vorname des eingeloggten Benutzers ist.rDatensätzeDer Datensatz der für den jeweiligen Zweck getestet werden soll, also der Datensatz der für die Filterbedingung bei Datenquellen gefiltert werden soll, oder bei den Farben im Datenmanagement eingefärbt werden soll, oder bei der Konfiguration für untergeordnete Datensätze (bei der Filterbedingung und der Sortierung) der untergeordnete Datensatz etc.
recordDatensätzeWenn ein Anzeige-Template als Detail-Template aufgerufen wird und wenn ein E-Mail-Template aufgerufen wird, so ist der Detaildatensatz unter der Variable
recordin der Filterbedingung für Datenquellen zugänglich. Das einzige Attribut das aber tatsächlich vorhanden ist, istid(d.h.record.idist die eindeutige 30-stellige Kennung des Detail-Datensatzes.)langStringDie aktuelle Sprache (
globals.langin UL4).modeStringDer Template-Modus (
globals.modein UL4).searchStringDer aktuelle Suchausdruck für die Ajax-Suche für Applookups vom Untertyp
"choice"im Eingabeformular.request.idIn der Filterbedingung für Datenquellen kann mittels
request.idauf die eindeutige ID des Requests zugegriffen werden.request.methodIn der Filterbedingung für Datenquellen kann mittels
request.methodauf die HTTP-Request-Methode zugegriffen werden.request.urlIn der Filterbedingung für Datenquellen kann mittels
request.urlauf die vollständige URL (mit Query-String) zugegriffen werden.request.paramsIn der Filterbedingung für Datenquellen kann mittels
request.paramsauf die Parameter des HTTP-Requests zugegriffen werden (nur bei Anzeige-Templates, nicht bei E-Mail-Templates).request.paramsbesitzt zehn Unter-Attribute.request.params.str.*Enthält die Parameter als Einzelwerte und interpretiert sie als String. Wenn ein Parametername trotzdem doppelt angegeben wurde, ist der Wert der des ersten Auftretens, d.h. in der URL:
http://my.living-apps.de/gateway/apps/1234567890abcdef12345678?template=gurk&x[]=1&y=2&x[]=3
ergibt
request.params.str.xden String"1". Wurde der Parametername gar nicht angegeben, so ist der WertNone.request.params.strlist.*Enthält die Parameter als Listen und interpretiert sie als String, d.h. wenn ein Parametername mehrmals angegeben wurde, so ist der Wert eine Liste mit mehreren Strings, wurde er nur einmal angegeben, so enthält die Liste nur einen String, wurde der Parametername gar nicht angegeben, so ist die Liste leer. Bei obiger URL ergibt also
request.params.strlist.xdie Liste["1", "3"],request.params.strlist.yergibt["2"]undrequest.params.strlist.zergibt[].request.params.int.*Enthält die Parameter als Einzelwerte und interpretiert sie als ganze Zahl. Wird ein Parametername trotzdem doppelt angegeben, ist der Wert der des ersten Auftretens, d.h. in der URL:
http://my.living-apps.de/gateway/apps/1234567890abcdef12345678?template=gurk&x[]=1&y=2&x[]=3
ergibt
request.params.int.xdie ganze Zahl1. Wurde der Parametername gar nicht angegeben, oder entspricht er nicht dem Format fürINT-Parameter, so ist der WertNone.request.params.intlist.*Enthält die Parameter als Listen und interpretiert sie als ganze Zahl, d.h. wenn ein Parametername mehrmals angegeben wurde, so ist der Wert eine Liste mit mehreren ganzen Zahlen, wurde er nur einmal angegeben, so enthält die Liste nur eine ganze Zahl. Wurde der Parametername gar nicht angegeben, oder entspricht er nicht dem Format für
INT-Parameter, so ist die Liste leer. Bei obiger URL ergibt alsorequest.params.intlist.xdie Liste[1, 3],request.params.intlist.yergibt[2]undrequest.params.intlist.zergibt[].request.params.float.*Enthält die Parameter als Einzelwerte und interpretiert sie als Zahl mit Nachkommastellen. Wird ein Parametername trotzdem doppelt angegeben, ist der Wert der des ersten Auftretens, d.h. in der URL:
http://my.living-apps.de/gateway/apps/1234567890abcdef12345678?template=gurk&x[]=1.1&y=2.2&x[]=3.3
ergibt
request.params.float.xdie Zahl1.1. Wurde der Parametername gar nicht angegeben, oder entspricht er nicht dem Format fürNUMBER-Parameter, so ist der WertNone.request.params.floatlist.*Enthält die Parameter als Listen und interpretiert sie als Zahl mit Nachkommastellen, d.h. wenn ein Parametername mehrmals angegeben wurde, so ist der Wert eine Liste mit mehreren Zahlen, wurde er nur einmal angegeben, so enthält die Liste nur eine Zahl. Wurde der Parametername gar nicht angegeben, oder entspricht er nicht dem Format für
NUMBER-Parameter, so ist die Liste leer. Bei obiger URL ergibt alsorequest.params.floatlist.xdie Liste[1.1, 3.3],request.params.floatlist.yergibt[2.2]undrequest.params.floatlist.zergibt[].request.params.date.*Enthält die Parameter als Einzelwerte und interpretiert sie als Datum. Wird ein Parametername trotzdem doppelt angegeben, ist der Wert der des ersten Auftretens, d.h. in der URL:
http://my.living-apps.de/gateway/apps/1234567890abcdef12345678?template=gurk&x[]=2018-05-01&y=2018-06-01&x[]=2018-07-01
ergibt
request.params.date.xdas Datum01.05.2018. Das Format fürDATE-Parameter istYYYY-MM-DD. Zum Beispiel kann mitrequest.params.date.datumin der Filterbedingung der Datenquelle aufdatum=2000-02-29in der URL zugegriffen werden. Wurde der Parametername gar nicht angegeben, oder entspricht er nicht dem Format fürDATE-Parameter, so ist der WertNone.request.params.datelist.*Enthält die Parameter als Listen und interpretiert sie als Datum, d.h. wenn ein Parametername mehrmals angegeben wurde, so ist der Wert eine Liste mit mehreren Daten, wurde er nur einmal angegeben, so enthält die Liste nur ein Datum. Wurde der Parametername gar nicht angegeben, oder entspricht er nicht dem Format für
DATE-Parameter, so ist die Liste leer. Bei obiger URL ergibt alsorequest.params.datelist.xdie Liste[01.05.2018, 01.07.2018],request.params.datelist.yergibt[01.06.2018]undrequest.params.datelist.zergibt[].request.params.datetime.*Enthält die Parameter als Einzelwerte und interpretiert sie als Datum mit Uhrzeit. Wird ein Parametername trotzdem doppelt angegeben, ist der Wert der des ersten Auftretens, d.h. in der URL:
http://my.living-apps.de/gateway/apps/1234567890abcdef12345678?template=gurk&x[]=2018-05-01T14:30:55&y=2018-06-01T09:50:22&x[]=2018-07-01T12:30:05
ergibt
request.params.datetime.xdas Datum mit Uhrzeit01.05.2018 14:30:55. Das Format fürDATETIME-Parameter istYYYY-MM-DDTHH:MM:SS. Zum Beispiel kann mitrequest.params.datetime.datumin der Filterbedingung der Datenquelle aufdatum=2000-02-29T14:30:29in der URL zugegriffen werden. Wurde der Parametername gar nicht angegeben, oder entspricht er nicht dem Format fürDATETIME-Parameter, so ist der WertNone.request.params.datetimelist.*Enthält die Parameter als Listen und interpretiert sie als Datum mit Uhrzeit, d.h. wenn ein Parametername mehrmals angegeben wurde, so ist der Wert eine Liste mit mehreren Daten und Uhrzeiten, wurde er nur einmal angegeben, so enthält die Liste nur ein Datum mit Uhrzeit. Wurde der Parametername gar nicht angegeben, oder entspricht er nicht dem Format für
DATETIME-Parameter, so ist die Liste leer. Bei obiger URL ergibt alsorequest.params.datetimelist.xdie Liste[01.05.2018 14:30:55, 01.07.2018 12:30:05],request.params.datetimelist.yergibt[01.06.2018 09:50:22]undrequest.params.datetimelist.zergibt[].
request.headersIn der Filterbedingung für Datenquellen kann mittels
request.headersauf die Header des HTTP-Requests zugegriffen werden (nur bei Anzeige-Templates, nicht bei E-Mail-Templates).request.headersbesitzt zwei Unter-Attribute.request.headers.str.*Enthält die Header als Einzelwerte und interpretiert sie als String. Wenn ein Header mehrfach angegeben wurde, ist es der Wert der des ersten Auftretens.
request.headers.strlist.*Enthält die Header als Listen und interpretiert sie als String, d.h. wenn ein Header mehrmals angegeben wurde, so ist der Wert eine Liste mit mehreren Strings, wurde er nur einmal angegeben, so enthält die Liste nur einen String, wurde der Header gar nicht angegeben, so ist die Liste leer.
request.cookies.*In der Filterbedingung für Datenquellen kann mittels
request.cookiesauf die Cookies des HTTP-Requests zugegriffen werden (nur bei Anzeige-Templates, nicht bei E-Mail-Templates).