Beim Schreiben von SQL-Befehlen können JobRouter-Variablen, Dialogfelder und Prozess- & Untertabellenfelder verwendet werden.
JobRouter-Variablen
Für die Verwendung von JobRouter-Variablen muss der Variablenname in eckige Klammern gesetzt werden. Eine vollständige Auflistung aller verfügbaren JobRouter-Systemvariablen finden Sie im Kapitel Systemvariablen.
SELECT * FROM TABELLE1 WHERE BENUTZERNAME = [jr_username]
Dialogfelder
Um Dialogfelder zu verwenden, muss der Name des Dialogelements in eckigen Klammern eingetragen werden.
SELECT * FROM TABELLE1 WHERE GEBUCHT = [gebucht]
Sofern man Bezug auf eine Untertabellenansicht nehmen möchte, ist generell folgende Schreibweise erforderlich: [<untertabellenName>_<spaltenName>]
SELECT DISTINCT mimetype FROM JRFILES WHERE mimetype LIKE '%[subtableViewFileDetails_mimetype]%'
Bitte beachten Sie: Ist bei einem Dialogelement die Eigenschaft Deaktiviert eingestellt, wird der Wert weder übertragen noch ausgewertet. Dies betrifft insbesondere das Senden eines Schrittes, als auch die Auswertung und Auflösung in einer SQL-Abfrage. Der im Dialog hinterlegte Wert des Elements wird daher nicht in der Datenbank gespeichert.
Alternativ dazu kann die Eigenschaft Schreibgeschützt verwendet werden.
Prozess- & Untertabellenfelder
Prozess- & Untertabellenfelder können verwendet werden, indem der Name des Prozess-/Untertabellenfelds in runde Klammern gesetzt wird.
SELECT * FROM TABELLE1 WHERE GEBUCHT = (gebucht)
Besonders zu beachten ist die Verwendung dieser Felder in Kombination mit nativen SQL-Funktionen. Um sicherzustellen, dass diese Funktionen korrekt mit dem Wert des Prozesstabellenfelds aufgerufen wird, muss die Abfrage folgendermaßen geklammert werden:
SELECT * FROM TABELLE1 WHERE GEBUCHT = LOWER((gebucht))
Möchten Sie innerhalb einer runden Klammer auf die tatsächliche Spalte der Datenbanktabelle zugreifen, muss ein Tabellen-Alias verwendet werden. Dadurch sind Namenskonflikte ausgeschlossen.
SELECT * FROM TABELLE1 AS t WHERE GEBUCHT = LOWER(t.gebucht)
Bitte beachten Sie: Soll die Variablenauflösung bei geklammerten Ausdrücken verhindert werden (z. B. bei Benutzung von eckigen Klammern um den Spaltennamen), muss zwischen der öffnenden und schließenden Klammer und dem dazwischen stehenden "Wort" ein Leerzeichen eingefügt werden. Auf diese Weise wird verhindert, dass der Ausdruck als Variable interpretiert wird.