ValidateSubflows
DerValidateSubflows-Prüfer erkennt alle Workflows, die als Subflows enthalten sind und die entweder inaktiv sind oder gelöscht wurden bzw. nicht als veröffentlichter Workflow für den aktuellen Benutzer verfügbar sind.
Validierungszusammenfassung
- Risiko: Ein übergeordneter Workflow, der in einen gelöschten Unterablauf übergeht, hängt unbegrenzt ohne Wiederherstellungsoptionen.
- Schweregrad: Kritisch
- Gültiges Ergebnis: Gültig
- Gültige Nachricht: Dieser Workflow enthält <Anzahl> gültige Unterabläufe.
- Ungültiges Ergebnis: Ungültig
- Ungültige Nachricht: Dieser Workflow enthält <ungültige Anzahl> ungültige Unterabläufe von <Gesamtanzahl Unterabläufe> Unterabläufe insgesamt.
- Vorgeschlagene Aktion: Entfernen Sie den Link im übergeordneten Workflow zum fraglichen Unterablauf, und überprüfen Sie den Unterablauf, um sicherzustellen, dass er gültig und veröffentlicht ist oder dass er für den aktuellen Benutzer ausgecheckt ist. Nachdem Sie den Zustand des Unterablaufs korrigiert haben, führen Sie die Validierung erneut aus, um Ihre Änderungen zu testen.
- Veröffentlichbar: Nein
- Lauffähig: Nein
- Zugehörige Informationen: Workflows, die als Subflows verwendet werden
Problembehandlung
Wenn ein Workflow ausgeführt wird, bestimmt die Skript-Engine − unabhängig davon, ob es sich um einen Unterablauf oder einen Hauptablauf handelt − unter Berücksichtigung der aktuellen Benutzer- und Workflowbedingungen, welche Version eines Workflows ausgeführt werden soll. Wenn ein Workflow von demselben Benutzer ausgecheckt wird, der den Workflow ausführt, ist die ausgecheckte Version die Version, die ausgeführt wird. Wenn der Benutzer nicht die Person ist, die den Workflow ausgecheckt hat, wird die veröffentlichte Version des Workflows ausgeführt. Wenn kein veröffentlichter Workflow vorhanden ist, wird kein Workflow ausgeführt.
Der ValidateSubflows-Prüfer adressiert folgendes Workflow-Szenario:
- Workflow ist an Benutzer A ausgecheckt.
- Workflow ist ein Unterablauf in einem übergeordneten Workflow, der von Benutzer B ausgeführt wird.
- Workflow hat keine veröffentlichte Alternative zu dem Unterablauf, der von Benutzer B ausgeführt wird.
In diesem Fall führt der übergeordnete Workflow die Ausführung des nicht veröffentlichten Unterablaufs aus und hängt dann bei dieser Aktivität, sodass kein weiterer Übergang möglich ist. Hauptabläufe, die diese Bedingung in einem Unterablauf antreffen, dürfen nicht für die Transaktion eines aktuellen Datensatzes ausgeführt werden. Stattdessen wird ein kritischer Protokolleintrag, der den Status des Unterablaufs detailliert, zum Workflow-Kontextdatensatz des aktuellen Workflows hinzugefügt. Um das Problem zu beheben, entfernen Sie den Subflow aus dem Hauptflow oder veröffentlichen Sie den Subflow, sodass er für Benutzer B verfügbar ist. Dadurch kann der Workflow bei der nächsten geeigneten Transaktion ausgeführt werden.
Der ValidateSubflow-Prüfer adressiert außerdem folgendes Workflow-Szenario:
- Workflow ist ein Subflow in einem übergeordneten Workflow, der von einem beliebigen Benutzer ausgeführt wird.
- Hat keine veröffentlichte Alternative zum Unterablauf, da der Workflow gelöscht wurde oder alle Versionen des Workflows nicht veröffentlicht oder inaktiv sind.