Dies ist eine alte Version des Dokuments!
Mit dem RunSqlScriptHandler können Datenbankskripte (z.B. Sql queries) direkt aus dem Prozessmodell heraus ausgeführt werden. Ein Query-Ergebnis kann anschließend z.B. in der Smartform angezeigt werden. Das ist insbesondere sinnvoll, wenn Prozessteilnehmer Datenbankabfragen zur Bearbeitung der Tasks benötigen. Eine ausführliche Anleitung zum Einsatz des Handlers finden Sie im folgenden Beispiel.
com.dooris.bpm.actionhandler.RunSqlScriptHandler
beliebig
beliebig
leer
Der Parameter host enthält die URL unter der, die Datenbank zu erreichen ist (z.B. host=get.taskinmotion.de/bestDB;).
Hier wird der Port hinterlegt, unter dem die Datenbank zu erreichen ist (z.B. port=17102;).
Hier wird der Name der Datenbank hinterlegt (z.B. database=EmployeeDb;).
Hier wird der Benutzername für die Zugriffskontrolle hinterlegt
Hier wird das Passwort für die Zugriffskontrolle hinterlegt
Der query parameter enthält die Sql query, die auf der Datenbank ausgeführt werden soll. (z.B. query=SELECT * FROM Mitarbeiter WHERE Gehalt>50000;)
Im Parameter responseVariable wird der Name der Variable hinterlegt, in die das query Ergebnis gespeichert wird. Mit der Variable kann das query Ergebnis z.B. in der Smartform angezeigt werden.
Das folgende Beispiel illustriert eine Möglichkeit, wie ein Sql Skript direkt aus einem Prozess heraus ausgeführt werden kann. Dabei werden die Parameter über die Smartform aufgenommen und als Prozessvariablen an den RunSqlScriptHandler weitergegeben. Das Prozessmodell sieht folgendermaßen aus.
Die benötigten Parameter werden in der Aktivität Run Sql script erfasst. Nach dem Ende der Aktivität wird über die Skript Aktivität Call REST ein REST call mithilfe des HttpRestHandler gestartet. Ist dieser erfolgreich wird die eigentliche Sql query in der Aktivität Call DB ausgeführt. Im Fehlerfall wird der Fehler in eine Log-Datei geschrieben.
Der RunSqlScriptHandler befindet sich auf der Call DB Aktivität und erwartet die obigen Parameter. Im Zuge der Aktivität Run Sql script werden die nötigen Eingaben über die Smartform aufgenommen und als Prozessvariablen für den RunSqlScriptHandler und den HttpRestHandler bereitgestellt (s. Screenshot).
Die Smartform dient lediglich der Aufnahme der benötigten Parameter. Zur Veranschaulichung werden in diesem Beispiel alle Parameter als Prozessvariablen zur Verfügung gestellt. In anderen Fall kann es sinnvoller sein lediglich den Benutzer, das Passwort sowie die Sql query über die Smartform abzufragen. Zu beachten ist auch, dass die Parameter Server und Number für den REST call nicht aber für den DB call benötigt werden. Das Ergebnis des DB calls kann im Textfeld Response ausgegeben werden.
Verfügbar seit Version TIM v5.4