... |
... |
@@ -4,11 +4,11 @@ |
4 |
4 |
|
5 |
5 |
== Funktionsbeschreibung == |
6 |
6 |
|
7 |
|
-Das kostenpflichtige Datenbankzähler-Plugin ermöglicht es, mehrere globale Zähler zu erstellen und zu verwalten. Der Zählwert kann innerhalb der [[Platzhalter>>doc:Formcycle.UserInterface.MyForms.WorkflowProcessing.WebHome]] ausgelesen, erhöht, verringert oder zurückgesetzt werden und ist als [[Statusverarbeitung>>doc:Formcycle.UserInterface.Variables.WebHome]] verfügbar. Über AJAX-Requests kann der Wert von einem oder mehreren Zählern ermittelt werden, z.B. im JavaScript-Code eines Formulars. |
|
7 |
+Das kostenpflichtige Datenbankzähler-Plugin-Bundle ermöglicht es, in einem neuen Menüpunkt einen oder mehrere globale Zähler zu erstellen und zu verwalten. Der Zählwert kann innerhalb der [[Platzhalter>>doc:Formcycle.UserInterface.MyForms.WorkflowProcessing.WebHome]] ausgelesen, erhöht, verringert oder zurückgesetzt werden und ist als [[Statusverarbeitung>>doc:Formcycle.UserInterface.Variables.WebHome]] verfügbar. Über ein Servlet-Aktions-Plugin kann zudem per AJAX-Request der Wert von einem oder mehreren Zählern ermittelt werden, z.B. im JavaScript-Code eines Formulars. |
8 |
8 |
|
9 |
9 |
== Installation == |
10 |
10 |
|
11 |
|
-Das Plugin kann als Mandant-Plugin oder System-Plugin installiert werden. Eine Anleitung zur Installation von Plugins finden Sie [[hier>>doc:Formcycle.UserInterface.Client.Plugins.WebHome]]. Zu beachten ist hierbei, dass das Plugin nur genau einmal auf dem {{formcycle/}} Server installiert werden darf. |
|
11 |
+Das Plugin-Bundle kann als Mandant-Plugin oder System-Plugin installiert werden. Eine Anleitung zur Installation von Plugins finden Sie [[hier>>doc:Formcycle.UserInterface.Client.Plugins.WebHome]]. Zu beachten ist hierbei, dass das Plugin nur genau einmal auf dem {{formcycle/}} Server installiert werden darf. |
12 |
12 |
|
13 |
13 |
{{info}} |
14 |
14 |
Durch dieses Plugin wird ein [[Rollenrecht>>doc:Formcycle.UserInterface.UserSettings.Roles]] erstellt, welches steuert, ob ein Benutzer Zugriff den Menüpunkt zur Konfiguration der Zähler hat. Diese Berechtigungen sollten nach der Installtion vergeben werden. |
... |
... |
@@ -16,7 +16,7 @@ |
16 |
16 |
|
17 |
17 |
== Verwendung anhand von Beispielen == |
18 |
18 |
|
19 |
|
-Im folgenden wird anhand eines Beispielprojekts die Verwendung von verschiedene Komponeten des Plugin-Bundles demonstriert. Das Ziel des Beispiels ist es, für eine Veranstaltung mit 15 Teilnehmern anzulegen. |
|
19 |
+Im folgenden wird anhand eines Beispielprojekts die Verwendung von verschiedene Komponeten des Plugin-Bundles demonstriert. Das Ziel des Beispiels ist es, für eine Veranstaltung mit 15 Teilnehmern . Dabei werden verschiedene Funktionalitäten des Plugin-Bundles verwendet. Die folgenden Schritte können prinzipiell anhand jedes Formulars nachvollzogen werden. Einzige Voraussetzung ist das Vorhandensein einer Schaltfläche zum Absenden des Formulars. |
20 |
20 |
|
21 |
21 |
=== Anlegen eines Zählers === |
22 |
22 |
|
... |
... |
@@ -107,7 +107,7 @@ |
107 |
107 |
Folgende Eigenschaften erscheinen, wenn die Option //Automatisch Zurücksetzen// ausgewählt wurde: |
108 |
108 |
|
109 |
109 |
{{info}} |
110 |
|
-Geschieht ein Zurücksetzen des Zählers, so ist nach Ausführung der aktuellen //Counter//-Verarbeitungsaktion der Wert des Zählers gleich dem Startwert. Zum Beispiel: Die Counter-Aktion sei so eingestellt, dass der Zähler um //3// erhöht wird. Weiterhin soll der Zähler täglich zurückgesetzt werden. Der aktuelle Wert sei //37//, der Startwert //11//. Die erste Counter-Aktion, die an einem Tag ausgeführt wird, setzt nun der Wert des Zählers auf den Wert //11// zurück. Das Hochzählen um 3 erfolgt erst ab der zweiten Counter-Aktion an einem Tag. |
|
110 |
+Geschieht ein Zurücksetzen des Zählers, so ist nach Ausführung der aktuellen Verarbeitungsaktion (//Counter oder Variable) //der Wert des Zählers gleich dem Startwert. Zum Beispiel: Die Counter-Aktion sei so eingestellt, dass der Zähler um //3// erhöht wird. Weiterhin soll der Zähler täglich zurückgesetzt werden. Der aktuelle Wert sei //37//, der Startwert //11//. Die erste Counter-Aktion, die an einem Tag ausgeführt wird, setzt nun der Wert des Zählers auf den Wert //11// zurück. Das Hochzählen um 3 erfolgt erst ab der zweiten Counter-Aktion an einem Tag. |
111 |
111 |
{{/info}} |
112 |
112 |
|
113 |
113 |
{{info}} |
... |
... |
@@ -154,6 +154,35 @@ |
154 |
154 |
; Globale Einstellungen nutzen (deprecated) |
155 |
155 |
: Diese Option sollte angehakt bleiben und dient nur der Abwärtskompatibilität zu älteren Versionen des Plugins. Bei älteren Versionen gab es nicht die Möglichkeit, eine Menüseite im Backend für die Zählerkonfiguration anzulegen, daher musste dies in der Aktionsverarbeitung geschehen. Ist diese Option deaktiviert, erscheinen weitere Einstellungen, die oben im Abschnitt zur Zählerkonfiguration beschrieben sind. |
156 |
156 |
|
|
157 |
+== Aktionsverarbeitung "Variable" == |
|
158 |
+ |
|
159 |
+{{figure image="plugin_dbcounter_action_variable_de.png"}} |
|
160 |
+Die Einstellungen für die Verarbeitungsaktion //Variable//. Mit dieser Aktion kann der Zählername dynamisch festgelegt werden, etwa durch den Wert eines Formularelements und wie als Variable genutzt werden. |
|
161 |
+{{/figure}} |
|
162 |
+ |
|
163 |
+Nach Installation dieses Plugins gibt es in der [[Status- und Aktionsverarbeitung>>doc:Formcycle.UserInterface.MyForms.WorkflowProcessing.WebHome]] eine neue Aktion namens //Variable//. Mit dieser Aktion kann der aktuelle Zählwert eines dynamisch festlegbaren Zählers geändert werden. |
|
164 |
+ |
|
165 |
+Im Unterschied zur Aktion //Counter// kann bei dieser Aktion ein Zähler über seinen Namen ausgewählt werden. Der Name kann frei über [[Platzhalter>>doc:Formcycle.UserInterface.Variables]] zusammengefasst werden. Wenn es den Zähler noch nicht gibt, wird ein neuer Zähler mit dem Namen angelegt. |
|
166 |
+ |
|
167 |
+Daher eignet sich diese Aktion besonders, wenn es eine unbekannte Anzahl von Zählern gibt. Beispielsweise kann diese Aktion für ein Teilnahmeformular genutzt werden, bei dem es jede Woche neue Termine gibt. Für jeden Termin kann dann ein Zähler (etwa im //Format Jahr-Monat-Tag//) benutzt werden, um die Anzahl der Teilnehmer an dem jeweiligen Tag zu zählen. |
|
168 |
+ |
|
169 |
+=== Variablenänderung === |
|
170 |
+ |
|
171 |
+Hier wird der Name der Variable ("Zähler") ausgewählt und in angegeben, in welcher Weise deren Wert geändert werden soll. |
|
172 |
+ |
|
173 |
+; Zählername |
|
174 |
+: Auswahl des Zählers, dessen Wert geändert werden soll. Hier wird der Name des Zählers (nicht dessen {{smallcaps}}Uuid{{/smallcaps}}) eingegeben. Zudem können Platzhalter verwendet werden, um den Zählernamen dynamisch zu erzeugen. Etwa kann hier ein Formularfeld mit der {{smallcaps}}id{{/smallcaps}} eines Termins verwendet werden. |
|
175 |
+; Zählaktion |
|
176 |
+: Gibt an, in welcher Art und Weise der Wert des Zählers geändert werden soll. Möglich Optionen sind: |
|
177 |
+:; Hochzählen |
|
178 |
+:: Erhöht den Wert des Zählers um die eingegebene Zahl. |
|
179 |
+:; Herunterzählen |
|
180 |
+:: Erniedrigt den Wert des Zählers um die eingegebene Zahl. |
|
181 |
+:; Zähler auf Startwert zurücksetzen |
|
182 |
+:: Setzt den Wert des Zählers auf den eingegebenen Startwert zurück. |
|
183 |
+; Schrittweite |
|
184 |
+: Anzahl, um die der Zähler hoch beziehungsweise herunter gesetzt werden soll. Nicht verfügbar, wenn //Zähler auf Startwert zurücksetzen// ausgewählt wurde. |
|
185 |
+ |
157 |
157 |
== Rückgabeparameter der Aktionen == |
158 |
158 |
|
159 |
159 |
{{figure image="plugin_dbcounter_action_return_parameters_de.png"}} |
... |
... |
@@ -160,7 +160,7 @@ |
160 |
160 |
Einstellungen für die Rückgabeparameter der Aktion, die später über Aktionsplatzhalter verfügbar sind. |
161 |
161 |
{{/figure}} |
162 |
162 |
|
163 |
|
-Manchmal ist es notwendig, auf das Ergebnis der Zählaktion zugreifen zu können, etwa den aktuellen Wert oder den Statuscode. Dies kann über [[Aktionsplatzhalter>>doc:Formcycle.UserInterface.Variables]] geschehen, welche auf die Rückgabewerte einer Aktion zugreifen. In den allgemeinen Rückgabeparametern kann eingestellt werden, über welchem Schlüssel auf die Rückgabeparameter Aktion zugegriffen werden kann. Beispielsweise trage die Zähleraktion den Namen //CountUp//. Dann kann über den Platzhalter //[%$CountUp.RESULT[0].Counter%]// auf den aktuellen Zählwert zugegriffen werden. Folgende Rückgabeparameter sind verfügbar: |
|
192 |
+Manchmal ist es notwendig, auf das Ergebnis der Zählaktion zugreifen zu können, etwa den aktuellen Wert oder den Statuscode. Dies kann über [[Aktionsplatzhalter>>doc:Formcycle.UserInterface.Variables]] geschehen, welche auf die Rückgabewerte einer Aktion zugreifen. In den allgemeinen Rückgabeparametern kann eingestellt werden, über welchem Schlüssel auf die Rückgabeparameter Aktion zugegriffen werden kann. Beispielsweise trage die Zähleraktion den Namen //CountUp//. Dann kann über den Platzhalter //[%$CountUp.RESULT[0].currentValue%]// auf den aktuellen Zählwert zugegriffen werden, falls unter bei den allgemeinen Rückgabeparameter der Wert //currentValue// im mittleren Eingabefelder //Counter// eingetragen wurde. Folgende Rückgabeparameter sind verfügbar: |
164 |
164 |
|
165 |
165 |
; ResultCode |
166 |
166 |
: Ein nummerischer Zahlenwert, der angibt, ob die Zählaktion erfolgreich war oder nicht. Folgende Ergebnisnummern sind möglich: |
... |
... |
@@ -224,31 +224,34 @@ |
224 |
224 |
Beispiel zum Auslesen eines Zählers im Formular mittels {{smallcaps}}Ajax{{/smallcaps}}. Die {{smallcaps}}Url{{/smallcaps}} wird anhand der im Formular zur Verfügung stehenden Metadaten aufgebaut. Hiermit wird vermieden, die {{smallcaps}}Url{{/smallcaps}} hart im Quelltext zu hinterlegen, was zu Fehlern führt, wenn sich etwa der Server oder der Kontextpfad ändern sollte. |
225 |
225 |
{{/figure}} |
226 |
226 |
|
227 |
|
-Nach Installation des Plugins ist eine neue Servlet-Aktion verfügbar, mit der auf den aktuellen Wert eines Zähler zugegriffen werden kann. Dies kann dazu genutzt werden, um aus einem Formular den Wert eines Zählers per {{smallcaps}}Ajax{{/smallcaps}}-Anfrage zu ermitteln. |
|
256 |
+Nach Installation des Plugins ist eine neue Servlet-Aktion verfügbar, mit der auf den aktuellen Wert eines Zähler zugegriffen werden kann. Dies kann dazu genutzt werden, um aus einem Formular den Wert eines Zählers per {{smallcaps}}Ajax{{/smallcaps}}-Anfrage zu ermitteln. Die {{smallcaps}}Url{{/smallcaps}} für das Servlet baut sich nach dem folgenden Schema auf: |
|
257 |
+In der Konfigurationsoberfläche des Zählers wird bereits eine Vorlage für einen {{smallcaps}}Ajax{{/smallcaps}}-Zugriff geliefert. |
|
258 |
+TODO: Für grun gelten die Regeln |
228 |
228 |
|
|
260 |
+ |
229 |
229 |
== Zugriff auf Zählerwert mittels AJAX-Request == |
230 |
230 |
|
231 |
|
-In der [[//Zählerkonfiguration>>||anchor="HEinstellungenimMenFCpunkt22ZE4hlerkonfiguration22"]] wird eine Vorlage für einen {{smallcaps}}Ajax{{/smallcaps}}-Zugriff auf den jeweiligen Zähler bereitgestellt. |
|
263 |
+Diese werden in der Konfigurationsoberfläche des Zählers angezeigt. Die zurückgegebenen {{smallcaps}}Json{{/smallcaps}}-Objekt enthalten ein Objekt mit dem Namen Counter mit den folgenden Attributen: |
|
264 |
+ |
|
265 |
+; LastChange |
|
266 |
+: Gibt an, ob der Servlet-Aufruf erfolgreich war. Der Wert ist ein weiteres {{smallcaps}}Json{{/smallcaps}}-Objekt mit folgenden Einträgen: |
232 |
232 |
|
233 |
|
-Gernerell muss für einen Zugriff auf den Wert eines Zählers per AJAX eine entsprechende {{smallcaps}}Url{{/smallcaps}} verwendet werden. Diese folgt dem folgenden Schema: |
234 |
|
- |
235 |
235 |
{{code language="none"}} |
236 |
236 |
https://<Host>/<FORMCYCLE-Kontextpfad>/plugin?name=Servlet%20Counter&client-id=<Mandant-ID>&id=<Zähler-UUID> |
237 |
237 |
{{/code}} |
238 |
238 |
|
239 |
|
-Falls {{formcycle/}} lokal unter dem Pfad //xima-formcycle// installiert wurde, der Zähler in einem Formular des Mandanten mit der ID //1// verwendet wird und die {{smallcaps}}Uuid{{/smallcaps}} //bc49d3b0-f869-4e59-864e-ddcc2925ed63// besitzt, lautet die {{smallcaps}}Url{{/smallcaps}} dementsprechend: |
|
272 |
+Falls also etwa {{formcycle/}} lokal unter dem Pfad //xima-formcycle// installiert wurde, der Zähler in einem Formular des Mandanten mit der ID //1// verwendet wird und die {{smallcaps}}Uuid{{/smallcaps}} //bc49d3b0-f869-4e59-864e-ddcc2925ed63// besitzt, dann lautet die {{smallcaps}}Url{{/smallcaps}}: |
240 |
240 |
|
241 |
241 |
{{code language="none"}} |
242 |
242 |
https://localhost:8080/xima-formcycle/plugin?name=Servlet%20Counter&client-id=1&id=bc49d3b0-f869-4e59-864e-ddcc2925ed63 |
243 |
243 |
{{/code}} |
244 |
244 |
|
245 |
|
-Alternativ ist es auch möglich, statt der //client-id// die {{smallcaps}}id{{/smallcaps}} des Formulars zu verwenden: |
|
278 |
+Alternativ ist es auch möglich, statt der //client-id// die {{smallcaps}}id{{/smallcaps}} des Formulars zu verwenden. Diese {{smallcaps}}id{{/smallcaps}}s lediglich verwendet, um das Servlet-Aktions-Plugin zu bestimmen, welches ausgeführt werden soll, und werden von diesem konkreten Plugin nicht ausgewertet: |
246 |
246 |
|
247 |
247 |
{{code language="none"}} |
248 |
248 |
https://<Host>/<FORMCYCLE-Kontextpfad>/plugin?name=Servlet%20Counter&project-id=<Formular-ID>&id=<Zähler-UUID> |
249 |
249 |
{{/code}} |
250 |
250 |
|
251 |
|
- |
252 |
252 |
=== HTTP-Parameter === |
253 |
253 |
|
254 |
254 |
Zusätzlich zu den oben genannten Parametern gibt es noch weitere Parameter, die an die {{smallcaps}}Url{{/smallcaps}} angehängt werden können. Im Folgenden werden alle verfügbaren Parameter kurz erläutert. |
... |
... |
@@ -309,7 +309,6 @@ |
309 |
309 |
|
310 |
310 |
* Verbesserung der Oberfläche für die Zählerkonfiguration |
311 |
311 |
* Entfernen der Aktion //Variable ändern// |
312 |
|
-* Einführen neuer Template-Platzhalter. |
313 |
313 |
|
314 |
314 |
=== 3.0.0 === |
315 |
315 |
|