Prüfen, ob sich ein ausgewählter Workflow in einem bestimmten Status befindet
Wenn Ihr Workflow über ausreichende Komplexität verfügt, können Sie ihn in mehrere einfache Prozesse aufteilen. Der Prozess für eine Geschäftsreise kann zum Beispiel auf folgende Art vereinfacht werden:
- Reiseantrag – Hauptprozess.
- Reiseauftrag – Unterprozess, der die Detailinformationen über die Reise, die Buchung usw. enthält.
- Spesenabrechnung - erforderlicher Unterprozess für die Übermittlung einer Spesenabrechnung zur Genehmigung.
Damit die Prozesse in der richtigen Reihenfolge ausgeführt werden, verbinden Sie sie mit Hilfe von Verweisen und richten Validierungsregeln ein. Validierungsregeln helfen Ihnen bei der Prüfung, ob sich der zugehörige Unterprozess in einem bestimmten Status befindet oder nicht. Um besondere Daten von einem verwandten Element zu erhalten, benutzen Sie folgendes Ausdrucksmuster:
$<Reference_Field_ID> -> <Related_Item_Field_ID> |
dabei gilt:
<Reference_Field_ID> - Identifier eines Felds, das auf ein anderes Element verweist.
<Related_Item_Field_ID> - Identifier beliebiger Felder des Elements, auf das verwiesen wird.
So verbinden Sie den Prozess:
1. Gehen wir davon aus, dass die Vorlagen zuvor erstellt und konfiguriert wurden. Wechseln Sie zu dem betreffenden Arbeitsbereich und wählen die Applikation Reiseantrag aus.
2. Klicken Sie auf Felder.
3. Erstellen Sie die Felder Reiseauftrag (ID: Travel_order) und Spesenabrechnung (ID: Expenses_report) vom Typ Referenz. Wählen Sie die entsprechenden Apps als Referenzen aus. Klicken Sie auf Speichern.
4. Wechseln Sie zu Formular und ziehen Sie die erstellten Felder in das Formular der Workflow-Aufgabe. Speichern Sie die Änderungen.
So richten Sie Validierungsregeln ein:
1. Gehen Sie in der App Reiseantrag zu Workflow.
2. Suchen Sie den Schritt des Hauptprozesses Reiseantrag, in dem der zugehörige Reiseauftrag den Status Vom Vorgesetzten geprüft haben soll (ID: wfstate.verifiedBoss).
3. Öffnen Sie den auf diesen Schritt folgenden Übergang und verbinden Sie ihn mit dem nächsten Schritt im Hauptprozess.
4. Gehen Sie zu Validierungsregeln und klicken Sie auf Regel hinzufügen.
5. Geben Sie den folgenden Ausdruck in den integrierten Regeleditor ein.
NOTEQUALS($Travel_order->workflowState, ID(""wfstate.verifiedBoss"")) |
6. Geben Sie den Namen der Regel und die Meldung ein, die erscheinen soll, wenn der zugehörige Reiseauftrag noch nicht geprüft worden ist. Klicken Sie auf Speichern.
7. Gehen Sie zurück zum Workflow-Diagramm und suchen Sie den Schritt des Hauptprozesses Spesenabrechnung, in dem der zugehörige Reiseauftrag den Status Vom Vorgesetzten geprüft haben soll (ID: wfstate.verifiedBoss). Führen Sie die Schritte 3-6 aus und benutzen Sie den folgenden Ausdruck für den Spesenabrechnung:
NOTEQUALS($Expenses_report->workflowState, ID(""wfstate.verifiedBoss"")) |
So prüfen Sie, ob es funktioniert:
1. Erstellen Sie die neuen Workflow-Aufgaben Reiseantrag, Reiseauftrag und Spesenabrechnung.
2. Verbinden Sie diese mit Hilfe der Referenzfelder.
3. Bewegen Sie die Workflow-Aufgabe Reiseantrag durch den Workflow.
4. Bei Ausführung des erforderlichen Übergangs von Reiseantrag erscheint eine entsprechende Meldung, wenn die zugehörige Workflow-Aufgabe vom Vorgesetzten noch nicht geprüft wurde.