... |
... |
@@ -2,50 +2,86 @@ |
2 |
2 |
|
3 |
3 |
{{content/}} |
4 |
4 |
|
5 |
|
-{{id name="fig_workflow_overview" /}} |
6 |
|
-{{figure image="workflow_overview_marked_de.png" clear="h1"}} |
7 |
|
-Den größten Platz des //Workflowdesigners// nimmt der [[Arbeitsbereich>>||anchor="sec_designer_component_main"]] in der Mitte (1) ein. Dieser stellt die Verarbeitung des Formulars grafisch in Form des //Workflowgraphen// dar. Links neben dem Arbeitsbereich befindet sich die [[Elementauswahl>>||anchor="sec_designer_component_element_selection"]] (2), welche sämtliche Aktionen, Ereignisse und weitere Steuerungselemente auflistet. Neue Elemente können einfach per Drag & Drop aus der Elementauswahl in die Verarbeitung gezogen werden. Die Eigenschaften einzelner Elemente im Arbeitsbereich werden rechts neben diesem in den [[Elementeigenschaften>>||anchor="sec_designer_component_element_properties"]] dargestellt. Über diesen Bereichen befindet sich die [[Werkzeugleiste>>||anchor="sec_designer_component_tool_bar"]] (4) des Workflowdesigners. Unterhalb des Arbeitsbereichs befindet sich eine [[Statusleiste>>||anchor="sec_designer_component_status_bar"]] (5) mit Information zur aktuellen Verarbeitung. |
8 |
|
-{{/figure}} |
|
5 |
+{{id name="fig_workflow_overview"/}} |
|
6 |
+{{figure image="workflow_overview_marked_de.png" clear="h1"}}Den größten Platz des //Workflowdesigners// nimmt der [[Arbeitsbereich>>||anchor="sec_component_main"]] in der Mitte (1) ein. Dieser stellt die Verarbeitung des Formulars grafisch in Form des //Workflowgraphen// dar. Links neben dem Arbeitsbereich befindet sich die [[Elementauswahl>>||anchor="sec_component_element_selection"]] (2), welche sämtliche Aktionen, Ereignisse und weitere Steuerungselemente auflistet. Neue Elemente können einfach per Drag & Drop aus der Elementauswahl in die Verarbeitung gezogen werden. Die Eigenschaften einzelner Elemente im Arbeitsbereich werden rechts neben diesem in den [[Elementeigenschaften>>||anchor="sec_component_element_properties"]] dargestellt. Über diesen Bereichen befindet sich die [[Werkzeugleiste>>||anchor="sec_component_tool_bar"]] (4) des Workflowdesigners. Unterhalb des Arbeitsbereichs befindet sich eine [[Statusleiste>>||anchor="sec_component_status_bar"]] (5) mit Information zur aktuellen Verarbeitung.{{/figure}} |
9 |
9 |
|
10 |
|
-{{id name="sec_designer" /}} |
11 |
|
-== Workflowdesigner == |
12 |
12 |
|
13 |
|
-{{id name="fig_workflow_example_submit" /}} |
14 |
|
-{{figure image="workflow_example_submit_de.png" clear="h1"}} |
15 |
|
-Beispiel einer Verarbeitungskette für das Absenden eines Formulars über den Absendebutton //btnSubmit// im Formular. |
16 |
|
-{{/figure}} |
|
9 |
+{{id name="fig_workflow_example_submit"/}} |
|
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}} |
17 |
17 |
|
18 |
|
-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_designer_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. |
|
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. |
19 |
19 |
|
20 |
|
-{{id name="sec_designer_graph" /}} |
21 |
|
-=== Workflowgraph === |
|
14 |
+{{id name="sec_graph"/}} |
22 |
22 |
|
23 |
|
-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. Der Workflow ist von oben nach unten zu lesen. Jede Verarbeitungskette beginnt mit einem Ereignis, 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 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 Antragstelle auch eine E-Mail angegeben hat. Wenn dies nicht der Fall ist, wird bspw. ein PDF des Formular erstellt und dieses dem Antragsteller zurückgegeben. Wie man sieht führen Bedingungen dazu, dass sich eine Verarbeitungskette in zwei Teilverarbeitungsketten aufteilen. Jede dieser Teileverarbeitungsketten muss in einem Endpunkt 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. Das hier vorgestellte Beispiel ist in der [[Abbildung>>||anchor="fig_workflow_example_submit"]] als Verarbeitungskette im Arbeitsbereich des Workflowdesigner dargestellt. |
|
16 |
+== Workflowgraph == |
24 |
24 |
|
25 |
|
-Neue erstellte Formular haben keinen konfigurierten Workflow, d.h. es ist keine Ereignis-Verarbeitungskette im Workflowgraphen enthalten. Alles was im Arbeitsberecih 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. |
|
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 |
+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. |
26 |
26 |
|
27 |
|
-{{id name="sec_designer_components" /}} |
28 |
|
-=== Komponenten === |
|
21 |
+{{id name="sec_graph_default" /}} |
|
22 |
+=== Standardverhalten === |
29 |
29 |
|
30 |
|
-Wie in der [[Abbildung>>||anchor="fig_workflow_overview"]] zu sehen, besteht der Workflowdesigner aus den folgenden Komponente: [[Arbeitsbereich>>||anchor="sec_designer_component_main"]], [[Elementauswahl>>||anchor="sec_designer_component_element_selection"]], [[Elementeigenschaften>>||anchor="sec_designer_component_element_properties"]] & [[Statusleiste>>||anchor="sec_designer_component_status_bar"]], welche im Folgenden kurz vorgestellt werden sollen. Über diesen Bereichen befindet sich die [[Werkzeugleiste>>||anchor="sec_designer_component_tool_bar"]] des Workflowdesigners (Allgemeine Informationen zur Werkzeugleiste sind [[hier>>doc:Formcycle.Designer.WebHome]] zu finden). |
|
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. |
31 |
31 |
|
32 |
|
-{{id name="sec_designer_component_main" /}} |
33 |
|
-==== Arbeitsbereich ==== |
|
26 |
+{{id name="sec_graph_summary" /}} |
|
27 |
+=== Zusammengefasst === |
34 |
34 |
|
35 |
|
-{{id name="sec_designer_component_element_selection" /}} |
36 |
|
-==== Elementauswahl ==== |
|
29 |
+Jeder Workflowgraph kann aus mehreren //Verarbeitungsketten// bestehen. Der Workflow kann aber auch keine Verarbeitungskette besitzen, dann greift das [[Standardverhalten>>||anchor="sec_graph_default"]]. |
|
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 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. |
37 |
37 |
|
38 |
|
-Die Elementauswahl kann über das Pfeilsymbol am Rand eingeklappt werden, wodurch mehr Platz für den Arbeitsbereich entsteht. dem Workflowgraphen können trotzdem |
|
32 |
+{{id name="sec_components"/}} |
39 |
39 |
|
40 |
|
-{{id name="sec_designer_component_element_properties" /}} |
41 |
|
-==== Elementeingenschaften ==== |
|
34 |
+== Oberfläche == |
42 |
42 |
|
43 |
|
-{{id name="sec_designer_component_tool_bar" /}} |
44 |
|
-==== Werkzeugleiste ==== |
|
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). |
45 |
45 |
|
46 |
|
-{{id name="sec_designer_component_status_bar" /}} |
47 |
|
-==== Statusleiste ==== |
|
38 |
+{{id name="sec_component_main"/}} |
48 |
48 |
|
|
40 |
+=== Arbeitsbereich === |
|
41 |
+ |
|
42 |
+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: |
|
43 |
+* Ein Ereignis wird aus der [[Elementauswahl>>||anchor="sec_component_element_selection"]] am linken Rand per Drag & Drop in den Arbeitsbereich auf das Plus-Sysmbol [[image:workflow_plus.png]] am Anfang des Workflowgraphen gezogen. |
|
44 |
+* Es wird auf Plus-Symbol [[image:workflow_plus.png]] am Anfang des Workflowgraphen geklickt. Daraufhin öffnet sich ein Kontextmenü über welches das Ereignis ausgewählt werden kann. |
|
45 |
+In beiden Fällen entsteht eine neue Verarbeitungskette mit dem gewählten Ereignis. |
|
46 |
+ |
|
47 |
+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: |
|
48 |
+* 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. |
|
49 |
+* 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. |
|
50 |
+ |
|
51 |
+{{id name="sec_component_element_selection"/}} |
|
52 |
+ |
|
53 |
+=== Elementauswahl === |
|
54 |
+ |
|
55 |
+Die Elementauswahl kann über das Pfeilsymbol am Rand eingeklappt werden, wodurch mehr Platz für den Arbeitsbereich entsteht. Dem Workflowgraphen können trotzdem neue Elemente mit einem Klick auf die sog. Droppunkte [[image:workflow_drop_point.png]] innerhalb der Verarbeitungsketten hinzugefügt werden. |
|
56 |
+ |
|
57 |
+{{id name="sec_component_element_properties"/}} |
|
58 |
+ |
|
59 |
+=== Elementeingenschaften === |
|
60 |
+ |
|
61 |
+{{id name="sec_component_tool_bar"/}} |
|
62 |
+ |
|
63 |
+=== Werkzeugleiste === |
|
64 |
+ |
|
65 |
+{{id name="sec_component_status_bar"/}} |
|
66 |
+ |
|
67 |
+=== Statusleiste === |
|
68 |
+ |
|
69 |
+{{id name="sec_elements"/}} |
|
70 |
+ |
|
71 |
+== Workflowelemente == |
|
72 |
+ |
|
73 |
+{{id name="sec_elements_events"/}} |
|
74 |
+ |
|
75 |
+=== Ereignisse === |
|
76 |
+ |
|
77 |
+{{id name="sec_elements_actions"/}} |
|
78 |
+ |
|
79 |
+=== Aktionen === |
|
80 |
+ |
|
81 |
+{{id name="sec_elements_endpoints"/}} |
|
82 |
+ |
|
83 |
+=== Endpunkte === |
|
84 |
+ |
49 |
49 |
== Grobe Beschreibung == |
50 |
50 |
|
51 |
51 |
* Grundkonzepte |
... |
... |
@@ -61,7 +61,6 @@ |
61 |
61 |
* Bedingungen und Fehlerelemente grob beschreiben und auf Aktionen verlinken |
62 |
62 |
* Endpunkte grob beschreiben und auf Aktionen verlinken |
63 |
63 |
|
64 |
|
- |
65 |
65 |
Direkt darunter kommen alle Elemente des Workflows |
66 |
66 |
|
67 |
67 |
Hinweise von Andre: |
... |
... |
@@ -72,8 +72,8 @@ |
72 |
72 |
* Es gibt eine Validierung des gesamten Workflows. Formular wird offline geschaltet, wenn invalider Workflow gespeichert wird. |
73 |
73 |
* 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. |
74 |
74 |
|
75 |
|
- |
76 |
76 |
TODO auf Unterseiten: |
|
111 |
+ |
77 |
77 |
* Aktionen des neuen WF sollten immer auch auf die alten verlinken und umgekehrt. |
78 |
78 |
* Bei den Aktionen sollte immer auch im ersten Satz stehen, in welcher Gruppe sie sind |
79 |
79 |
* 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. |