Erfordert der Arbeitsablauf in einem Bearbeitungsstatus mehrere Freigaben bzw. Genehmigungen gleichzeitig und nicht nacheinander, so kann dies mit den folgenden Schritten ermöglicht werden.


Neue Workflow-Aktion einrichten

Neue Workflow Aktion UserGroupApprovalTransitionsAction unter Formularverwaltung erstellen, siehe Beispiel:

Workbench-Aktion:
com.jaxfront.eforms.core.actions.UserGroupApprovalTransitionsAction

Weitere Informationen zur Erzeugung der Workflow-Aktionen finden Sie unter Aktionen.


Workflow-Status

Für eine parallele Freigabe in einem Workflow werden folgende zusätzlichen Status benötigt:

1 Status, in dem die parallele Freigabe erfolgt und

1 Status, in dem die ausgelöste Freigabe übergeht.

Als Beispielsszenario haben wir den folgenden Arbeitsablauf:

  1. User reicht das ausgefüllte Formular ein (Status 4)
  2. Bearbeiter genehmigt das eingereichte Formular und gibt es an 2 Abteilungen zur Genehmigung weiter (Status 10)
  3. Abteilung 1 und Abteilung 2 können unabhängig voneinander die Freigabe vornehmen (Status 15)
  4. Sobald beide Abteilungen ihre Zustimmung gegeben haben, ändert sich der Status (Status 20)

Weitere Informationen zur Erzeugung der Workflow-Status finden Sie unter Status.


Workflow-Übergänge

Arbeitsschritt vor der parallelen Freigabe (Beispiel Status 4 → 10)

Notwendig für den verketteten Arbeitsschritt: Es muss sichergestellt sein, dass der Arbeitsschritt, der vor der parallelen Freigabe stattfindet, nach der Ausführung nicht beendet wird.

Checkbox "Workflow verlassen?" muss bei der Vor-Aktion nicht aktiviert sein, dafür kann die visuelle Repräsentation aktiviert werden:

Arbeitsschritt für die parallele Freigabe (Beispiel Status 10 → 15)

Mit der obigen Anpassung wird dieser Arbeitschritt automatisch ausgelöst. Dieser Schritt setzt die Ermöglichung der Parallelfreigabe voraus.

Folgende Definitionen müssen eingepflegt werden:

  • Aktion: UserGroupApprovalTransitionsAction
  • Workflow verlassen?: Ja

Eigenschaften

SchlüsselWertBeispielswertBeschreibung
targetWorkflowIdID des Übergangs nach der Freigabepending_completedID der Workflowkante, in dem die ausgelöste Freigabe übergeht. Wird für die parallele Freigabe zwingend benötigt.
includeGroupsID der Gruppen (kommagetrennt)GroupApproval1,GroupApproval2Definiert, welche Gruppen die Genehmigungen ausführen müssen.
Alle Backend-Benutzer, die der Gruppe zugewiesen wurden, müssen ihre Freigabe erteilen.
Entweder includeGroups oder includeUsers verwenden, nicht beides.
includeUsersID der Benutzer (kommagetrennt)User1,User2Definiert, welche Benutzer die Genehmigungen ausführen müssen.
Alle Backend-Benutzer, die hier aufgelistet sind, müssen ihre Freigabe erteilen.
Entweder includeGroups oder includeUsers verwenden, nicht beides.


Arbeitsschritt der eigentlichen parallelen Freigabe (Beispiel Status 15 → 20)

Folgende Definitionen müssen eingepflegt werden:

  • Bereich: TRANSITION
  • Aktion: saveFormAction
  • Visuelle Repräsentation?: Ja
  • Workflow verlassen?: Ja
  • Benötigt Bestätigung?: Ja (optional)
  • Kommentar zulassen?: Ja (optional)
  • Visuelle Repräsentation nach Erfolgsstatus schliessen?: Ja

Nachbedingung Implementation

Klasse: com.jaxfront.eforms.core.conditions.UserGroupApprovalCondition

StringWert
StringAPPROVED
booleanfalse
  • Nachbedingung nach Ausführung der Aktion auswerten: Ja

Eigenschaften (optional)

SchlüsselWertBeschreibung
isDialogtrueSchritte nach der Ausführung der Freigabe (z.B. Bestätigungsfenster) werden in einem Dialog angezeigt
okConditioncountErrors("incomplete", true,true) == 0Freigabe kann erst ausgeführt werden, wenn keine Validierungsfehler vorliegen


Weitere Informationen zur Erzeugung der Workflow-Übergänge finden Sie unter Übergänge.
  • Keine Stichwörter