FillInstanceDataViaXMLManager
Beschreibung
Der Timer FillInstanceDataViaXMLManager überprüft, ob eine XML-Datei in einem bestimmten Verzeichnis des Dateisystems vorhanden ist. Sobald der Timer eine XML-Datei gefunden hat, wird anhand der Vorgangs-ID geprüft, ob ein Vorgang mit dieser ID existiert. Sobald dieser Vorgang, die angegebene Aktivität/Waitstate erreicht, werden die Daten aus der XML-Datei extrahiert und als Prozessvariablen zu diesem Vorgang abgespeichert.
Das Verzeichnis und die XML-Datei müssen auf dem Dateisystem des Servers vorhanden sein.
Webservice-Name
FillInstanceDataViaXMLManager
Webservice-Methode
fillInstanceDataViaXML
Parameter
Parameter | Beschreibung | Gültige Beispiele |
---|---|---|
Definitionsname | Ein Name der Prozessdefinition. |
|
Name der Aktivität/Waitstate | Name der Aktivität bzw. des Waitstates bei dem der Timer ausgeführt werden soll. |
|
Pfad | Pfad zum Verzeichnis auf dem Server, indem sich die XML Datei gesucht werden soll. |
|
XML Xpath | Angabe des XPath Ausdrucks, der festlegt welches Element aus der XML-Datei in eine Variable umgewandelt werden soll. |
|
Alle Parameter werden durch Kommata separiert:
NameProzessdefinition,NameWaitstate,usr/local/tim/XMLFiles,//variable
XML-Datei
Um einen eindeutigen Bezug zwischen der XML-Datei und einem Vorgang herzustellen, sind 2 Varianten möglich:
Variante 1 - Dateiname enthält ID des Vorgangs
Name XML-Datei: filename_ID.xml
<?xml version="1.0" encoding="UTF-8"?>
<processInstance>
<variable><key>NameProzessvariable1</key><value><![CDATA[WertProzessvariable1]]></value></variable>
<variable><key>NameProzessvariable1</key><value><![CDATA[WertProzessvariable1]]></value></variable>
</processInstance>
Variante 2 - XML-Datei enthält ID des Vorgangs
Name XML-Datei: filename.xml
Konnte vom Timer keine XML-Datei zum Vorgang bzw. der Waitstate oder die Aktivität im Vorgang nicht gefunden werden, werde alle Mitglieder der Gruppe “Prozesseigentümer” automatisch per E-Mail informiert.
Beispiel
Nachfolgend wird anhand eines einfachen Beispielprozesses erläutert, wie eine XML-Datei zu einem bestimmten Zeitpunkt in einem Vorgang extrahiert wird und Prozessvariablen generiert werden.
Sobald der WaitState “ImportXML” erreicht ist, prüft der Timer, ob zu dieser Vorgangs-ID eine XML-Datei in dem angegebenen Verzeichnis auf dem Server existiert. Wurde eine Datei gefunden, wird die Datei extrahiert und die darin enthaltenen Prozessvariablen inklusive deren Werte zum Vorgang gespeichert. Der WaitState wird bei erfolgreichem Import abgeschlossen und in der nächsten Aufgabe “Task2” sind die Prozessvariablen und die dazugehörigen Werte verfügbar.
Beispielprozess
Nach dem Deployment wird im Workflow Designer eine Smartform mit zwei Eingabefeldern angelegt. In dem hier vorliegen Beispiel sollen der Name (Variable: name) und die Straße (Variable: strasse) einer Person mit Hilfe einer XML-Datei im Smartform nach dem WaitState “importXML” mit Werten befüllt sein.
Smartform:
Timer:
Für dieses Beispiel wurde folgender Timer eingerichtet.
| Beispiele |
---|---|
Timername |
|
Webservicename |
|
Webservice-Name |
|
Parameter |
|
Startzeitpunkt |
|
max. Durchläufe |
|
XML-Datei
Weiterhin ist eine XML-Datei mit folgendem Beispiel Inhalt erforderlich.
Die Beispieldatei erhält folgenden Beispielnamen testfile_36165685.xml
und bspw. im Verzeichnis /usr/local/tim/xmlTestFiles/
auf dem Server hochgeladen.
Ergebnis:
Anschließend kann die Aufgabe “Task1” abgeschlossen werden. Sobald der Timer FillInstanceDataViaXMLManager ausgeführt wird, werden die Daten aus der XML-Datei in den Vorgang importiert, der WaitState abgeschlossen und in der Aufgabe “Task2” im Smartform, die entsprechenden Werte zu den Prozessvariablen im Smartform angezeigt.
© TIM Solutions GmbH | AGB | Datenschutz | Impressum