Aufgabenverlauf ermitteln
WMS 1.1.3
Ermittelt den Verlauf einer Aufgabe. Mit Verlauf sind alle Aufgaben gemeint, die im Workflow dieser Aufgabe gestartet wurde.
Es muss keine Aufgaben-ID angegeben werden. Wenn nicht angegeben, dann werden alle Aufgaben des aktuellen Workflows ermittelt.
Eigenschaften
Eingabe
Name | Beschreibung | Datentyp | Erforderlich |
---|---|---|---|
Instanz-ID | Die ID des Workflows, dessen Verlauf ermittelt werden soll. | int |
Ausgabe
Name | Beschreibung | Datentyp |
---|---|---|
Verlauf | Eine Liste mit allen Aufgaben und Nachrichten, die zum angegeben Workflow gestartet wurden. | List of WmsTaskHistoryItem |
Variablen
Name | Beschreibung | Datentyp |
---|---|---|
wmsTaskHistory | Variable wird automatisch erstellt und enthält Aufgaben und Meldungen aus dem Aufgabenverlauf. | List of WmsTaskHistoryItem |
Fehlermeldungen
Beschreibung | Fehlercode | Datentyp (Exception) |
---|---|---|
Wenn ein Workflow angegeben ist, der nicht zu Ihrem Mandanten gehört: Sie haben keine Berechtigung für den gewählten Mandanten. | 9 (WmsApiMessage) |
Beispiele
Alle Aufgaben eines Workflows ermitteln und als PDF speichern
Protokoll mit einem Standard-Text aus dem WMS:
“Aufgabenverlauf ermitteln” ohne eine Instanz-ID, damit alle Aufgaben des aktuellen Workflows und dessen Sub-Workflows ermittelt werden
Assign
Hier wird mit einem LINQ-Ausdruck aus der Liste mit den Einträgen eine string-liste erzeugt. Sie ruft die Methode GetTaskHistoryInfo() auf. Darin erzeugt das WMS einen Standardsatz, der den Eintrag beschreibt.
LINQ: (FROM item IN wmsTaskHistory SELECT item.GetTaskHistoryInfo()).ToArray()Text in PDF umwandeln
Die gerade erzeugte String-Liste wird mit einem string.Join(Environment.NewLine, lines) zu einem Text zusammengefasst. Die Einträge sind dabei mit einem Zeilenumbruch getrennt.
Anstatt den den Standardsatz des WMS mit GetTaskHistoryInfo() können Sie den Text natürlich auch selbst definieren.
Beispiel-Workflow herunterladen:
Protokoll mit einem eigenen Text:
Wie in obigen Beispiel verwenden Sie zunächst “Aufgabenverlauf ermitteln”
Mit einem ForEach (Typ WmsTaskHistoryItem ) durchlaufen Sie nun den Verlauf
Wenn ein Eintrag IsTask = true aufweist, dann handelt es sich um eine Aufgabe und sie können alle Eigenschaften des WmsTaskHistoryItem-Objekts nutzen, um einen Text für das Protokoll zusammenzustellen.
Wenn ein Eintrag IsTask = false aufweist, dann handelt es sich NICHT um eine Aufgabe sondern nur um eine Info (z.B. Aufgabe wurde delegiert, Dokument wurde gespeichert, …). Es ist dann lediglich die Eigenschaft Message gesetzt
Alle Aufgaben eines anderen Workflows ermitteln
Wenn Sie die Aufgaben eines anderen Workflows ermitteln wollen, dann benötigen Sie die Instanz-Id dieses Workflows.
(Das gilt nicht für Workflows die mit “Workflow starten” gestartet werden - die sind im aktuellen Workflow enthalten).
Diese Instanz-ID erhalten Sie beim mit der Aktivität Workflow-ID ermitteln
Die Workflow-Instanz-ID, zu der eine Aufgabe gehört können Sie sich auch als Spalte in einer Aufgabenliste einblenden lassen.
Verwandte Themen