Änderungen von Dokument Workflow


Von Version 65.1
bearbeitet von nlo
am 28.07.2021, 12:46
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 51.1
bearbeitet von nlo
am 26.07.2021, 17:47
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Inhalt
... ... @@ -9,7 +9,7 @@
9 9  {{id name="fig_workflow_example_submit"/}}
10 10  {{figure image="workflow_example_submit_de.png" clear="h1"}}Beispiel einer Verarbeitungskette für das Absenden eines Formulars über den Absendebutton //btnSubmit// im Formular.{{/figure}}
11 11  
12 -Der Workflowdesigner ermöglicht es, die Verarbeitung von Formularen auf eine intuitive und visuelle Weise per Drag & Drop zu erstellen. Die Verarbeitung von Formularen wird als ein ereignisbasiertes Flussdiagramm dargestellt. Dieses Flussdiagramm wird im Folgenden als der [[**Workflowgraph**>>||anchor="sec_graph"]] bezeichnet. Innerhalb des //Workflowgraphen// werden einzelne Verarbeitungsketten angelegt, welche durch Ereignisse ausgelöst werden. Ereignisse sind etwa der Klick auf einen Absendebutton, das Bestätigen eines Double-Opt-In-Vorgangs oder das Überschreitung eines definierten Zeitpunktes. Abzweigungen innerhalb des Graphen stellen Entscheidungen oder Bedingungen dar. Durch diese Bedingungen können unterschiedliche Aktionen ausgeführt werden, abhängig vom Status eines Vorgangs und/oder den erfassten Formulardaten.
12 +Der Workflowdesigner ermöglicht es, die Verarbeitung von Formularen auf eine intuitive und visuelle Weise per Drag & Drop zu erstellen. Die Verarbeitung von Formularen wird als ein ereignisbasiertes Flussdiagramm dargestellt. Dieses Flussdiagramm wird im Folgenden als der [[**Workflowgraph**>>||anchor="sec_graph"]] bezeichnet. Innerhalb des //Workflowgraphen// werden einzelne Verarbeitungsketten angelegt, welche durch Ereignisse ausgelöst werden. Ereignisse sind etwa der Klick auf einen Absendeknopf, das Bestätigen eines Double-Opt-In-Vorgangs oder das Überschreitung eines definierten Zeitpunktes. Abzweigungen innerhalb des Graphen stellen Entscheidungen oder Bedingungen dar. Durch diese Bedingungen können unterschiedliche Aktionen ausgeführt werden, abhängig vom Status eines Vorgangs und/oder den Eingaben eines Endnutzers.
13 13  
14 14  {{id name="sec_graph"/}}
15 15  
... ... @@ -18,61 +18,29 @@
18 18  Der //Workflowgraph// stellt das Herzstück des Workflowdesigners dar, mit welchem die Verarbeitung eines Formulars grafisch repräsentiert wird und bearbeitet werden kann. Der Beginn einer jeden Verarbeitung ist mit dem {{formcycle/}}-Symbol markiert. [[image:workflow_start.png]]
19 19  Der Workflow ist von oben nach unten zu lesen und besteht aus einzelnen //Verarbeitungsketten//. Jede Verarbeitungskette beginnt mit einem [[Ereignis>>||anchor="sec_elements_events"]], welches diese auslöst. Bspw. kann der Klick auf einen bestimmten Button im Formular eine Verarbeitungskette starten, in welcher eine [[E-Mail>>doc:Formcycle.Designer.Workflow.Actions.EMail.WebHome]] an den Antragsteller gesendet wird. Wie man an diesem Beispiel sieht, werden innerhalb von Verarbeitungsketten [[Aktionen>>||anchor="sec_elements_actions"]] ausgeführt. Diese Verarbeitungsketten können komplexer werden und sich bspw. abhänging von den Formulareingaben aufsplitten. Diese Abzweigungen werden über [[Bedingungen>>doc:Formcycle.Designer.Workflow.FlowControl.Condition.WebHome]] realisiert. So wird bspw. nur eine E-Mail versendet, wenn der Antragsteller auch eine E-Mail angegeben hat. Wenn dies nicht der Fall ist, wird bspw. ein PDF des Formulars erstellt und dieses dem Antragsteller zurückgegeben. Wie man sieht führen Bedingungen dazu, dass sich eine Verarbeitungskette in zwei //Teilverarbeitungsketten// aufteilt. Jede Verarbeitungskette muss in einem [[Endpunkt>>||anchor="sec_elements_endpoints"]] enden. In der Regel ist ein solcher Endpunkt ein [[Status>>doc:Formcycle.Designer.Workflow.States.WebHome]] in dem sich der Vorgang nach Aursführung der Verarbeitung befinden soll. Im Fall von Bedingungen werden die dadurch entstandenen Teilverarbeitungsketten nach Ausführung der geünschten Aktionen wieder zusammen geführt (siehe [[Abbildung>>||anchor="fig_workflow_example_submit"]]). Jede Teilverarbeitungskette kann allerdings auch einen eigenen Endpunkt definieren. Das hier vorgestellte Beispiel ist in der [[Abbildung>>||anchor="fig_workflow_example_submit"]] als Verarbeitungskette im Arbeitsbereich des Workflowdesigner dargestellt.
20 20  
21 -{{id name="sec_graph_default"/}}
22 -
21 +{{id name="sec_graph_default" /}}
23 23  === Standardverhalten ===
24 24  
25 -Neue erstellte Formulare haben keinen konfigurierten Workflow, d.h. es ist keine Ereignis-Verarbeitungskette im Workflowgraphen enthalten. Alles was im Arbeitsbereich des Workflowdesigners zu sehen ist, ist das {{formcycle/}}-Symbol, welches den Beginn der Verarbeitung darstellt. In einem solchen Fall landen abgesendete Vorgänge immer im Status //Eingegangen//, auch wenn dies nicht explizit im Workflowgraphen konfiguriert ist. Dies ist das Standardverhalten von {{formcycle/}}, wenn kein Workflow konfiguriert wurde. Diese Standardverhalten greift auch, wenn ein Formular mit einem Button abgesendet wurde, für welchen nicht explizit ein Workflowereignis mit Verarbeitungskette im Workflowgraphen definiert wurde.
24 +Neue erstellte Formulare haben keinen konfigurierten Workflow, d.h. es ist keine Ereignis-Verarbeitungskette im Workflowgraphen enthalten. Alles was im Arbeitsbereich des Workflowdesigners zu sehen ist, ist das {{formcycle/}}-Symbol, welches den Beginn der Verarbeitung darstellt. In einem solchen Fall landen abgesendete Vorgänge immer im Status //Eingegangen//, auch wenn dies nicht explizit im Workflowgraphen konfiguriert ist. Dies ist das Standardverhalten von {{formcycle/}}, wenn kein Workflow konfiguriert wurde. Diese Standardverhalten greift auch, wenn ein Formular mit einem Button abgesendet wurde, für welchen nicht explizit ein Workflowereignis im Workflowgraphen definiert wurde.
26 26  
27 -{{id name="sec_graph_summary"/}}
28 -
26 +{{id name="sec_graph_summary" /}}
29 29  === Zusammengefasst ===
30 30  
31 31  Jeder Workflowgraph kann aus mehreren //Verarbeitungsketten// bestehen. Der Workflow kann aber auch keine Verarbeitungskette besitzen, dann greift das [[Standardverhalten>>||anchor="sec_graph_default"]].
32 -Jede Verarbeitungskette beginnt mit einem [[Ereignis>>||anchor="sec_elements_events"]], danach folgen [[Workflowelemente>>||anchor="sec_elements"]] wie [[Aktionen>>||anchor="sec_elements_actions"]] und [[Bedingungen>>doc:Formcycle.Designer.Workflow.FlowControl.Condition.WebHome]]. Die Aktionen werden von ob nach unten betrachtet ausgeführt. Bedingungen auf dem Pfad werden entsprechend des Umgebungs- und Vorgangszustandes ausgewertet. Die Verarbeitungskette endet immer in einem [[Endpunkt>>||anchor="sec_elements_endpoints"]]. Teilverarbeitungsketten können einen eigenen Endpunkt definieren.
30 +Jede Verarbeitungskette beginnt mit einem [[Ereignis>>||anchor="sec_elements_events"]], danach folgen [[Workflowelemente>>||anchor="sec_elements"]] wie [[Aktionen>>||anchor="sec_elements_actions"]] und [[Bedingungen>>doc:Formcycle.Designer.Workflow.FlowControl.Condition.WebHome]]. Die Verarbeitungskette endet immer in einem [[Endpunkt>>||anchor="sec_elements_endpoints"]]. Teilverarbeitungsketten können einen eigenen Endpunkt definieren.
33 33  
34 34  {{id name="sec_components"/}}
35 35  
36 36  == Oberfläche ==
37 37  
38 -Wie in der [[Abbildung>>||anchor="fig_workflow_overview"]] zu sehen, besteht der Workflowdesigner aus den folgenden Komponente: [[Arbeitsbereich>>||anchor="sec_component_main"]], [[Elementauswahl>>||anchor="sec_component_element_selection"]], [[Elementeigenschaften>>||anchor="sec_component_element_properties"]], [[Werkzeug->>||anchor="sec_component_tool_bar"]] & [[Statusleiste>>||anchor="sec_component_status_bar"]], welche im Folgenden kurz vorgestellt werden sollen. Allgemeine Informationen zur Werkzeugleiste sind [[hier>>doc:Formcycle.Designer.WebHome]] zu finden.
36 +Wie in der [[Abbildung>>||anchor="fig_workflow_overview"]] zu sehen, besteht der Workflowdesigner aus den folgenden Komponente: [[Arbeitsbereich>>||anchor="sec_component_main"]], [[Elementauswahl>>||anchor="sec_component_element_selection"]], [[Elementeigenschaften>>||anchor="sec_component_element_properties"]] & [[Statusleiste>>||anchor="sec_component_status_bar"]], welche im Folgenden kurz vorgestellt werden sollen. Über diesen Bereichen befindet sich die [[Werkzeugleiste>>||anchor="sec_component_tool_bar"]] des Workflowdesigners (Allgemeine Informationen zur Werkzeugleiste sind [[hier>>doc:Formcycle.Designer.WebHome]] zu finden).
39 39  
40 40  {{id name="sec_component_main"/}}
41 41  
42 42  === Arbeitsbereich ===
43 43  
44 -Der Arbeitsbereich stellt den [[Workflowgraphen>>||anchor="sec_graph"]] dar. Jederzeit können dem Workflowgraphen neue [[Ereignisse>>||anchor="sec_compontents_events"]] hinzugefügt werden. Es gibt zwei Möglichkeiten dem Workflowgraphen ein neues Ereignis hinzuzufügen:
42 +Der Arbeitsbereich stellt den [[Workflowgraphen>>||anchor="sec_graph"]] dar. Jeder zeit können dem Workflowgraphen neue Ereignisse hinzugefügt werden. Dies kann auf zwei Dies Geschieht entweder über einen Klick auf das Plus-Symbol [[image:workflow_plus.png]]
45 45  
46 -* Ein Ereignis wird aus der [[Elementauswahl>>||anchor="sec_component_element_selection"]] am linken Rand per Drag & Drop in den Arbeitsbereich auf das Plus-Sysmbol {{ficon name="plus-circle-outline"/}} am Anfang des Workflowgraphen gezogen.
47 -* Es wird auf Plus-Symbol {{ficon name="plus-circle-outline"/}} am Anfang des Workflowgraphen geklickt. Daraufhin öffnet sich ein Kontextmenü über welches das Ereignis ausgewählt werden kann.
48 -
49 -In beiden Fällen entsteht eine neue Verarbeitungskette mit dem gewählten Ereignis.
50 -
51 -Verarbeitungsketten können überall da neue [[Workflowelemente>>||anchor="sec_compontents"]] hinzugefügt werden, wo sich ein sog. Droppunkt [[image:workflow_drop_point.png]] befindet. Dies ist auf zwei verschiedene Arten möglich:
52 -
53 -* Ein Workflowelement wird aus der [[Elementauswahl>>||anchor="sec_component_element_selection"]] am linken Rand per Drag & Drop in den Arbeitsbereich auf den gewünschten Droppunkt [[image:workflow_drop_point.png]] in der Verarbeitungskette gezogen.
54 -* Es wird auf den gewünschten Droppunkt [[image:workflow_drop_point.png]] geklickt. Daraufhin öffnet sich ein Kontextmenü über welches das Workflowelement ausgewählt werden kann.
55 -
56 -Wenn eine neue Verarbeitungskette durch das Anlgen eines [[Ereignisses>>||anchor="sec_elements_events"]] erstellt wurde, erhält diese Verarbeitungskette standardmäßig den Status-Endpunkt //Eingegangen//. [[Endpunkte>>||anchor="sec_elements_endpoints"]] können aus Verarbeitungsketten entfernt werden. Jede Verarbeitungskette, muss allerdings wenigstens einen Endpunkt besitzen. Ein neuer Endpunkt kann hinzugefügt werden indem dieser aus der [[Elementauswahl>>||anchor="sec_component_element_selection"]] auf einen Droppunkt [[image:workflow_drop_point.png]] innerhalb der Verarbeitungskette oder auf den aktuellen Endpunkt der (Teil-)Verarbeitungskette gezogen wird. Wurde der Endpunkt der gesamten Verarbeitungskette gelöscht, kann auch ein neuer Enpukt definiert werden, in dem auf den Platzhalter für den Endpunkt geklickt wird. Daraufhin öffnet sich ein Kontextmenü über welches ein Endpunkt ausgewählt werden kann.
57 -
58 -==== Elemente des Workflowgraphen ====
59 -
60 -Um die Eigenschaften eines [[Workflowelements>>||anchor="sec_elements"]] des Workflowgraphen anzuzeigen, muss auf das entsprechende Workflowelement geklickt werden. Sämtliche Eigenschaften des Elementes werden daraufhin rechts neben dem Workflowgraphen in den [[Elementeigenschaften>>||anchor="sec_component_element_properties"]] dargestellt und können dort angepasst werden. Workflowelemente können innerhalb und zwischen Verarbeitungsketten verschoben werden.
61 -
62 -Wird der Cursor über eine Workflowelement im Workflowgraphen bewegt erscheinen über diesem folgende zusätzliche Optionen:
63 -
64 -; {{icon name="trash"/}} Löschen
65 -: Löscht das gewählte Workflowelment
66 -
67 -; {{icon name="ban"/}} Deaktivieren
68 -: Deaktiviert das gewählte Workflowelement. Wird ein [[Ereignis>>||anchor="sec_elements_events"]] deaktiviert, dann ist dessen gesamte Verarbeitungskette deaktiviert.
69 -
70 -; {{ficon name="content-copy"/}} Duplizieren
71 -: Dupliziert das gewählte Workflowelement. Die Kopie wird unterhalb des Originals in den Workflowgraphen eingefügt. [[Ereignisse>>||anchor="sec_elements_events"]] könnne nicht dupliziert werden.
72 -
73 -; {{icon name="info-circle"/}} Kurzinfo
74 -: Gibt eine Zusammenfassung des Workflowelmentes. Für [[Ereignisse>>||anchor="sec_elements_events"]] beinhaltet dies die Angabe der durch das Ereignis bereitgestellten Werte. für das Ereignis //Double-Opt-In// bestätigt wird bspw. bereitgestellt in welcher Verarbeitungskette der Double-Opt-In initialisiert wurde. Für [[Aktionen>>||anchor="sec_elements_actions"]] werden die Konfigurationsparameter und deren Werte sowie die Rückgabewerte bei Erfolg bzw.Fehler aufgelistet. Die Aktion //Datenbank-Abfrage// gibt bspw. bei Erfolg das Result dieser Abfrage zurück. Mit diesen Rückgabewerten von Ereignissen oder Aktionen kann im weiteren Verlauf des Workflowgraphen also in nachfolgenden Aktione gearbeitet werden.
75 -
76 76  {{id name="sec_component_element_selection"/}}
77 77  
78 78  === Elementauswahl ===
... ... @@ -87,20 +87,10 @@
87 87  
88 88  === Werkzeugleiste ===
89 89  
90 -* Speichern
91 -{{id name="sec_component_tool_bar_validate"/}}
92 -* Validieren
93 -* Ansichtsoptionen
94 -* Mehr...
95 -* Öffnen/Vorschau
96 -
97 97  {{id name="sec_component_status_bar"/}}
98 98  
99 99  === Statusleiste ===
100 100  
101 -* Navigation
102 -* formularinformationen
103 -
104 104  {{id name="sec_elements"/}}
105 105  
106 106  == Workflowelemente ==
... ... @@ -117,9 +117,6 @@
117 117  
118 118  === Endpunkte ===
119 119  
120 -* Status-Endpunkte
121 -* Aktions-Endpunkte
122 -
123 123  == Grobe Beschreibung ==
124 124  
125 125  * Grundkonzepte
... ... @@ -134,9 +134,6 @@
134 134  * Aktionen grob Möglichkeiten beschreiben und auf Aktionen verlinken
135 135  * Bedingungen und Fehlerelemente grob beschreiben und auf Aktionen verlinken
136 136  * Endpunkte grob beschreiben und auf Aktionen verlinken
137 -* Funktionsweise der Status kurz erklären, evtl. auf Unterseiten verlinken. Erwähnen, dass Status jetzt auch versioniert sind.
138 -* Kopieren, Deaktivieren, Löschen-Icon an Ereignissen und Aktionen
139 -* Info-Icon (welches an jedem Ereignis / Aktion sich befindet) beschreiben: Enthält Beschreibung, Zusammenfassung der Konfiguration, Rückgabewerte mit Platzhaltern, mögliche auftretende Fehler (=> auf Platzhalter [$%LAST_ERROR%] [%$Aktion.ERROR_CODE%] etc. hinweisen und verlinken) sowie durch Daten, welche bei jedem Fehler zur Verfügung gestellt werden.
140 140  
141 141  Direkt darunter kommen alle Elemente des Workflows
142 142  
... ... @@ -147,11 +147,6 @@
147 147  * Eine Ausführung des Workflows ist fehlerhaft, wenn eine Aktion in einem Fehler endete und dieser Fehler nicht behandelt wurde (Abschlusseite: "Oops". Andernfalls ist die Ausführung des Workflows erfolgreich.
148 148  * Es gibt eine Validierung des gesamten Workflows. Formular wird offline geschaltet, wenn invalider Workflow gespeichert wird.
149 149  * Wird ein Workflow geändert, nicht gespeichert und neu geladen, erscheint ein Dialog, mit dem der alte Stand wiederherstellgt werden kann. Dabei wird nicht gespeichert, sondern erst, wenn der Nutzer auf Speichern klickt.
150 -* Bei einigen Aktionen können Dateien ausgewählt werden, die von anderen Aktionen erzeugt werden. Dabei können alle Aktionen ausgewählt werden, die potentiell vor der Aktion ausgeführt werden können. Z.B. wenn "Aktion A -> Bedingung(ja=Aktion B,nein=Aktion C), Aktion D" konfiguriert ist, dann kann in D Aktion A ausgewählt werden, diese kommt immer von A. Aber auch sowohl B als auch C können ausgewählt werden, weil je nach Ausgang der Bedingung B oder C vor D kommen können. In Aktion C kann aber nicht B ausgewählt werden, weil B nie vor C kommen kann.
151 -** Die gleiche Logik greift auch im Platzhalterdialog bei den zu Verfügung stehenden Aktionsplatzhaltern.
152 -* Referenziert eine Aktion auf Dateien einer vorigen Aktion, geht diese Referenz verloren, wenn die Aktion in eine andere Verarbeitungskette geschoben wird.
153 -* Umbenannt werden kann: Name der Verarbeitungskette und Ja/Nein-Label von Bedingungen durch Klick auf den Namen. Zudem kann durch Klick die Beschreibung geändert werden.
154 -* Bei der Redo/Undo-Funktionalität werden alle Änderungen an der Struktur des Workflows berücksichtigt. Nicht berücksichtigt werden Änderungen rechts im Properties-Panel.
155 155  
156 156  TODO auf Unterseiten:
157 157  
... ... @@ -158,3 +158,4 @@
158 158  * Aktionen des neuen WF sollten immer auch auf die alten verlinken und umgekehrt.
159 159  * Bei den Aktionen sollte immer auch im ersten Satz stehen, in welcher Gruppe sie sind
160 160  * Bei Legacy Aktionen sollte dies gernerell darüber stehen in einem Hinweisfeld. Die Aktionen , welche schon in der Version 6 deprecated waren, sollten dies dann extra im Text erwähnt bekommen.
108 +* Von Andre: Bei einigen Aktionen können Dateien ausgewählt werden, die von anderen Aktionen erzeugt werden. Dabei können alle Aktionen ausgewählt werden, die potentiell vor der Aktion ausgeführt werden können. Z.B. wenn "Aktion A -> Bedingung(ja=Aktion B,nein=Aktion C), Aktion D" konfiguriert ist, dann kann in D Aktion A ausgewählt werden, diese kommt immer von A. Aber auch sowohl B als auch C können ausgewählt werden, weil je nach Ausgang der Bedingung B oder C vor D kommen können. In Aktion C kann aber nicht B ausgewählt werden, weil B nie vor C kommen kann.