Änderungen von Dokument Datenbankzähler-Plugin


Von Version 13.9
bearbeitet von gru
am 10.03.2021, 16:09
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 5.1
bearbeitet von gru
am 10.03.2021, 11:28
Änderungskommentar: Neues Bild 1_Beispiel_Zaehler.png hochladen

Zusammenfassung

Details

Seiteneigenschaften
Inhalt
... ... @@ -14,9 +14,9 @@
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.
15 15  {{/info}}
16 16  
17 -== Beispiel für die Verwendung ==
17 +== Verwendung anhand von Beispielen ==
18 18  
19 -Im folgenden wird anhand eines Beispielprojekts die Verwendung von verschiedene Komponeten des Datenbankzähler-Plugins demonstriert. Das Ziel des Beispiels ist es, für eine Veranstaltung mit 15 Teilnehmern einen Zähler anzulegen und das Anmelden von mehr als 15 Teilnehmern zu verhindern.
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  
... ... @@ -24,8 +24,8 @@
24 24  Anlegen und konfigurieren eines neuen Zählers mit dem Namen //BeispielZaehler//.
25 25  {{/figure}}
26 26  
27 -{{figure image="2_Beispiel_Wert.png" width="200" clear="h3"}}
28 -Setzen des Wertes des Zählers auf die für das Beispiel gewünschte Teilnehmeranzahl von 15.
27 +{{figure image="2_Beispiel_Wert.png" width="600"}}
28 +Setzen des Wertes des Zählers auf die für das Beispiel gewünschte Teilnehmeranzahl.
29 29  {{/figure}}
30 30  
31 31  Nach der Installation des Plugin-Bundles gibt es im Hauptmenü der {{formcycle/}} Oberfläche einen neuen Menüeintrag [[//Zählerkonfiguration>>||anchor="HEinstellungenimMenFCpunkt22ZE4hlerkonfiguration22"]]. Dort kann über den einen Klick auf die Plus-Schaltfläche ein neuer Zähler angelegt werden. Für diesen muss ein //Zählername// angegeben werden. Über den Stift-Schaltfläche für //Aktueller Wert// kann der Wert des Zählers gesetzt werden. Nachdem dort der Wert 15 eingegeben wurde, muss dieser über die Haken-Schaltfläche bestätigt werden. Anschließend muss über die //Speichern//-Schaltfläche unten rechts der Zähler gespeichert werden.
... ... @@ -32,7 +32,7 @@
32 32  
33 33  === Konfiguration der Statusverarbeitungsaktion ===
34 34  
35 -{{figure image="3_Beispiel_Aktion.png" width="600" clear="h3"}}
35 +{{figure image="3_Beispiel_Aktion.png" width="600"}}
36 36  Konfigurieren einer //Counter//-Plugin-Aktion, welche den Wert des Zählers //BeispielZaehler// um 1 verringert.
37 37  {{/figure}}
38 38  
... ... @@ -40,34 +40,26 @@
40 40  
41 41  === Verwenden von Platzhaltern für die Prüfung der Formulareingänge ===
42 42  
43 -{{figure image="4_Beispiel_Aktionen.png" width="600" clear="h3"}}
44 -Zusätzlicher Status und zusätzliche Aktionen, um zu prüfen, ob es beim Eingang des Formulars noch einen Platz gab bzw. den Absender zu informieren, wenn es keinen freien Platz mehr gab.
43 +{{figure image="3_Beispiel_Aktion.png" width="600"}}
44 +Zusätzliche Aktionen im Status //Eingegangen//, um zu prüfen, ob es beim Eingang des Formulars noch einen Platz gab.
45 45  {{/figure}}
46 46  
47 -{{figure image="5_Beispiel_Bedingung.png" width="600" clear="h3"}}
48 -Konfigurieren einer Bedingung für die //Statuswechsel//-Plugin-Aktion, welche in den Status //Keine Plätze verfügbar// springt, wenn der Zählerwert 0 erreicht hat.
47 +{{figure image="4_Beispiel_Aktion.png" width="600"}}
48 +Konfigurieren einer Bedingung für die //Counter//-Plugin-Aktion, welche den Wert des Zählers //BeispielZaehler// um 1 verringert.
49 49  {{/figure}}
50 50  
51 -Um zu verhindern, dass das Formular normal eingeht, wenn es keine freien Plätze mehr gibt und um den Benutzer darüber zu informieren, dass er leider keinen Platz mehr bekommen hat, muss in der Verarbeitung weitere Aktionen und ein Status eingefügt werden.
51 +Um zu verhindern, dass das Formular normal eingeht, wenn es keine freien Plätze mehr gibt und um den Benutzer darüber zu informieren, dass er leider keinen Platz mehr bekommen hat, muss in der Verarbeitung weitere Aktionen eingefügt werden.
52 52  
53 -Zunächst wird ein neuer Status //Keine Plätze verfügbar// eingefügt. In diesem kann über eine Aktion vom Typ Abschlusseite ein Template ausgewählt werden, welches dem Nutzer anzeigt, dass es keine freien Plätze mehr gegeben hat. Für diesen Zweck existiert kein vorgefertigtes HTML-Template, weshalb dies selbst erstellt werden muss. Über eine Aktion vom Typ Vorgang löschen wird der eingegangene Vorgang anschließend wieder gelöscht.
53 +Über eine Bedingung an der Aktion //TODO// ist es möglich, zu prüfen, ob der Zählerwert beim Eingang des Fomulars bereits 0 ist. Ist dies der Fall, werden nur
54 54  
55 -Im Status //Eingegangen// muss eine Aktion vom Typ //Statusänderung// eingefügt werden, welche so konfiguriert ist, dass sie in den Ziel-Status //Keine Plätze verfügbar// wechselt. Über eine Abarbeitungsbedingung an der Aktion //Statusänderung// ist es möglich, zu prüfen, ob der Zählerwert beim Eingang des Fomulars bereits 0 ist. Nur in diesem Fall soll die Aktion abgearbeitet werden. Für diese Prüfung kann der Platzhalter {{code language="none"}}[%$$DBCOUNTER.BeispielZaehler%]{{/code}} als //Formularelement// verwendet werden.
56 -
57 57  === Verwendung von Platzhaltern im Formular ===
58 58  
59 -{{figure image="6_Beispiel_Zahlfeld.png" width="600"}}
57 +{{figure image="5_Beispiel_Zahlfeld.png" width="600"}}
60 60  Weiteres Eingabefeld zum Anzeigen der Anzahl der noch verfügbaren Plätze und die dafür nötigen Einstellungen im {{designer/}}.
61 61  {{/figure}}
62 62  
63 -{{figure image="7_Beispiel_Button.png" width="600" clear="h3"}}
64 -Konfiguration der Scihtbarkeitsbedingung der Schaltfläche zum Absenden im {{designer/}}.
65 -{{/figure}}
61 +Um dem Benutzer beim Öffnen des Formulars die Anzahl der zu diesem Zeitpunkt noch verfügbaren Plätze anzuzeigen, wird in diesem Beispiel ein weiteres Eingabefeld verwendet. Dieses wird so Konfiguriert, dass es vom Benutzer nicht editiert werden kann und über den PLlatzhalter {{code language="none"}}TODO{{/code}} beim Aufruf des Formulars mit dem aktuellen Zählerwert befüllt wird.
66 66  
67 -Um dem Benutzer beim Öffnen des Formulars die Anzahl der zu diesem Zeitpunkt noch verfügbaren Plätze anzuzeigen, kann ein weiteres Eingabefeld verwendet. Dieses wird so Konfiguriert, dass es vom Benutzer nicht editiert werden kann und über den Platzhalter {{code language="none"}}[%$$DBCOUNTER.BeispielZaehler%]{{/code}} beim Aufruf des Formulars mit dem aktuellen Zählerwert befüllt wird.
68 -
69 -Um zu verhindern, dass das Formular abgesendet werden kann, wenn es keine freien Plätze mehr gibt, kann im {{designer/}} für die Schaltfläche zum Absenden eine //Verstecken wenn//-Bedingung konfiguriert werden. Über diese wird die Schaltfläche unsichtbar, wenn das der Wert im gerade angelegten Eingabeelement (und damit der Wert des Zähler) 0 ist.
70 -
71 71  {{velocity}}
72 72  ##=== Auslesen des Zählerwertes per JavaScript ===
73 73  ##
... ... @@ -75,38 +75,47 @@
75 75  {{/velocity}}
76 76  === Herunterladen des Beispielformulars ===
77 77  
78 -Das Formular mit allen gemachten Einstellungen kann **[[hier>>attach:Beispiel Zähler.zip]]** heruntergeladen werden. Damit das Formular funktioniert, muss jedoch ein eigener Zähler unter [[//Zählerkonfiguration>>||anchor="HEinstellungenimMenFCpunkt22ZE4hlerkonfiguration22"]] angelegt werden und dieser muss in der Aktion //Counter// ausgewählt werden. Beim Import des Formulars kann außerdem ein HTML-Template mit importiert werden, welches dem Absender eines Formulars mittteilt, dass es keine weiteren freien Plätze gibt.
70 +Das Formular mit allen gemachten Einstellungen kann **HIER** heruntergeladen werden. Damit das Formular funktioniert, muss jedoch ein eigener Zähler unter [[//Zählerkonfiguration>>||anchor="HEinstellungenimMenFCpunkt22ZE4hlerkonfiguration22"]] angelegt werden und dieser muss in der Aktion //Counter// ausgewählt werden.
79 79  
80 80  == Einstellungen im Menüpunkt "Zählerkonfiguration" ==
81 81  
82 -{{figure image="8_plugin_dbcounter_config_base_de.png" width="600"}}
83 -Das Menü mit einer Übersicht über alle vorhandenen Zähler. Hier können auch neue Zähler hinzugefügt und bestehende Zähler bearbeitet werden.{{/figure}}
74 +{{figure image="6_plugin_dbcounter_config_base_de.png" width="600"}}
75 +Das Menü mit einer Übersicht über alle vorhandenen Zähler. Hier können auch neue Zähler hinzugefügt und bestehende {{/figure}}
84 84  
85 85  Nach Installation des Datenbankzähler-Plugin-Bundle erscheint links im Hauptmenü ein neuer Menüeintrag mit dem Namen //Zählerkonfiguration//. In diesem Menü findet sich eine Übersicht mit Informationen über alle vorhandenen Zähler, etwa deren Namen und aktuellen Wert. Weiterhin ist es auch möglich, neue Zähler anzulegen oder bestehende Zähler zu bearbeiten und zu löschen.
86 86  
87 87  Ein neuer Zähler wird durch Drücken auf das Plus-Symbol links oben angelegt. Ein bestehender Zähler wird Betätigen des Papierkorb-Symbols links oben gelöscht.
88 88  
89 -=== Zählerdaten ===
81 +=== Eigenschaften ===
90 90  
91 91  In der Liste links kann ein Zähler ausgewählt werden. Nach Auswahl erscheinen die folgenden Informationen zum ausgewählten Zähler:
92 92  
85 +; {{smallcaps}}Uuid{{/smallcaps}}
86 +: Eine eindeutige {{smallcaps}}id{{/smallcaps}} des Zählers, die etwa beim Abruf des Zählerwerts per {{smallcaps}}Ajax{{/smallcaps}} (siehe Servlet-Aktions-Plugin unten) verwendet wird.
87 +; Aktueller Wert
88 +: Der aktuelle Wert des Zählers.
89 +; Erstellt am
90 +: Das Datum, an dem der Zähler erstellt wurde.
91 +; Geändert am
92 +: Das Datum, an dem der Wert des Zählers zuletzt geändert wurde.
93 +
93 93  Weiterhin können die folgenden Eigenschaften des Zählers bearbeitet werden:
94 94  
95 95  ; Zählername
96 96  : Der Name dieses Zählers. Wird der Name geändert, sollte beachtet werden, dass Platzhalter und {{smallcaps}}Ajax{{/smallcaps}}-Abfragen, wo der Name des Zählers verwendet wird, ebenfalls angepasst werden müssen. {{smallcaps}}Ajax{{/smallcaps}}-Abfrage bei denen die {{smallcaps}}Uuid{{/smallcaps}} des Zählers verwendet wird müssen hingegen nicht angepasst werden, da die {{smallcaps}}Uuid{{/smallcaps}} des Zählers sich nicht ändert.
97 -; Aktueller Wert
98 -: Der aktuelle Wert des Zählers. Kann über die //Stift//-Schaltfläche bearbeitet werden.
99 99  ; Beschreibung
100 100  : Eine optionale Beschreibung des Zählers, die auch nur in diesem Backend-Menü einsehbar ist.
100 +; Startwert
101 +: Der Startwert des Zählers. Dieser wird auch benutzt, wenn in einer Aktion der Zählerwert auf den Startwert zurückgesetzt werden soll.
101 101  ; Automatisch zurücksetzen
102 102  : Wenn diese Option aktiviert ist, wird der Zähler in periodischen Abständen auf den Startwert zurückgesetzt.
103 103  
104 -==== Automatisches Zurücksetzen ====
105 +=== Automatisches Zurücksetzen ===
105 105  
106 106  Folgende Eigenschaften erscheinen, wenn die Option //Automatisch Zurücksetzen// ausgewählt wurde:
107 107  
108 108  {{info}}
109 -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.
110 110  {{/info}}
111 111  
112 112  {{info}}
... ... @@ -128,36 +128,18 @@
128 128  :; jährlich
129 129  :: Der Zähler wird jedes Jahr zum gewählten Tag zu der gewählten Uhrzeit zurückgesetzt
130 130  
131 -=== Zähler-Metadaten ===
132 -
133 -In diesem Bereich werden Meta-Informationen zum aktuell ausgewählten Zähler ausgegeben.
134 -
135 -; {{smallcaps}}Uuid{{/smallcaps}}
136 -: Eine eindeutige {{smallcaps}}id{{/smallcaps}} des Zählers, die etwa beim Abruf des Zählerwerts per {{smallcaps}}Ajax{{/smallcaps}} (siehe Servlet-Aktions-Plugin unten) verwendet wird.
137 -; Angelegt am
138 -: Das Datum, an dem der Zähler erstellt wurde.
139 -; Geändert am
140 -: Das Datum, an dem der Wert des Zählers zuletzt geändert wurde.
141 -
142 -=== Zähler-Zugriffmöglichkeiten ===
143 -
144 -Hier wir eine {{smallcaps}}Url{{/smallcaps}} für den direkten Zugriff auf den Zählerwert per AJAX-Request angegeben und ein JavaScript-Template für das Ausführen eines solchen AJAX-Requests innerhalb eines Formulars bereitgestellt. Bei dem JavaScript-Code ist zu beachten, dass dieser die jQuery-Funktion {{code language="none"}}$.ajax(){{/code}} verwendet, welche noch um Funktionen für das Behandeln von des zurückgegebenen Wertes ergänzt werden muss (z.B. Funktion über das Hinzufügen einer //success//-Funktion).
145 -
146 146  == Aktionsverarbeitung "Counter" ==
147 147  
148 -{{figure image="9_plugin_dbcounter_action_counter_de.png" width="300"}}
134 +{{figure image="7_plugin_dbcounter_action_counter_de.png"}}
149 149  Die Einstellungen für die Verarbeitungsaktion //Counter//. Hier kann festgelegt werden, welcher Zähler in welcher Weise geändert werden soll (hochzählen, herunterzählen etc).
150 150  {{/figure}}
151 151  
152 -Nach Installation des Datenbankzähler-Plugins gibt es in der [[Status- und Aktionsverarbeitung>>doc:Formcycle.UserInterface.MyForms.WorkflowProcessing.WebHome]] eine neue Aktion namens //Counter//. Mit dieser Aktion kann der aktuelle Zählwert eines Zählers verändert werden.
138 +Nach Installation dieses Plugins gibt es in der [[Status- und Aktionsverarbeitung>>doc:Formcycle.UserInterface.MyForms.WorkflowProcessing.WebHome]] eine neue Aktion namens //Counter//. Mit dieser Aktion kann der aktuelle Zählwert eines statischen Zählers geändert werden.
153 153  
154 154  Im der Aktion muss der Zähler fest ausgewählt werden und muss daher zuvor in der [[//Zählerkonfiguration>>||anchor="HEinstellungenimMenFCpunkt22ZE4hlerkonfiguration22"]] (siehe oben) angelegt werden.
155 155  
156 -=== Parameter der Aktion ===
157 -
158 158  ; Zählername
159 -: Auswahl des Zählers, dessen Wert geändert werden soll. Der Zähler muss vorher in der Zählerkonfiguration angelegt werden. Für jeden Zähler wird sowohl sein Name als auch seine {{smallcaps}}Uuid{{/smallcaps}} angezeigt. Die {{smallcaps}}Uuid{{/smallcaps}} dient der eindeutigen Identifikation des Zählers und wird etwa bei der Abfrage per {{smallcaps}}Ajax{{/smallcaps}} verwendet.
160 -
143 +: Auswahl des Zählers, dessen Wert geändert werden soll. Der Zähler sollte vorher in der Zählerkonfiguration angelegt werden, kann aber auch hier neu erstellt werden. Für jeden Zähler wird sowohl sein Name als auch seine {{smallcaps}}Uuid{{/smallcaps}} angezeigt. Die {{smallcaps}}Uuid{{/smallcaps}} dient der eindeutigen Identifikation des Zählers und wird etwa bei der Abfrage per {{smallcaps}}Ajax{{/smallcaps}} verwendet. Um einen Zähler zu löschen, wird dieser ausgewählt und das Papierkorb-Symbol rechts neben der Auswahl betätigt. Um einen neuen Zähler hinzuzufügen, wird zuerst auf das Plus-Symbol gedrückt, anschließend der gewünschte Name des Zählers eingegeben und schließlich der neue Zähler durch Drücken des Plus-Symbols angelegt.
161 161  ; Zählaktion
162 162  : Gibt an, in welcher Art und Weise der Wert des Zählers geändert werden soll. Möglich Optionen sind:
163 163  :; Hochzählen
... ... @@ -167,12 +167,18 @@
167 167  :; Zähler auf Startwert zurücksetzen
168 168  :: Setzt den Wert des Zählers auf den eingegebenen Startwert zurück.
169 169  ; Schrittweite
170 -: 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.
153 +: Anzahl, um die der Zähler hoch beziehungsweise herunter gesetzt werden soll.
154 +; Globale Einstellungen nutzen (deprecated)
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.
171 171  
172 -=== Rückgabeparameter der Aktion ===
157 +== Rückgabeparameter der Aktionen ==
173 173  
174 -Manchmal ist es notwendig, auf das Ergebnis der Zählaktion zugreifen zu können, wie zum Beispiel 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:
159 +{{figure image="plugin_dbcounter_action_return_parameters_de.png"}}
160 +Einstellungen für die Rückgabeparameter der Aktion, die später über Aktionsplatzhalter verfügbar sind.
161 +{{/figure}}
175 175  
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].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 +
176 176  ; ResultCode
177 177  : Ein nummerischer Zahlenwert, der angibt, ob die Zählaktion erfolgreich war oder nicht. Folgende Ergebnisnummern sind möglich:
178 178  :; 1 (OK)
... ... @@ -192,49 +192,72 @@
192 192  ; CounterAfterReset
193 193  : Falls der Zähler zurückgesetzt wurde: Der nummerische Wert des Zählers vor dem Zurücksetzen.
194 194  
195 -== Platzhalter ==
184 +== Systemplatzhalter-Plugin ==
196 196  
197 -{{figure image="10_dbcounter-plugin-placeholder_de.png"}}
186 +{{figure image="dbcounter-plugin-placeholder_de.png"}}
198 198  Ein Beispiel für den Platzhalter zum Auslesen des Zählwerts. Hier wird ein Zähler ausgelesen, der die Anzahl an Anmeldungen für eine Veranstaltung zählt. Dann wird geprüft, ob der Zählwert die maximale Anzahl an Anmeldungen übersteigt. Basierend auf dieser Prüfung kann dem Nutzer dann ein Fehler angezeigt werden, falls die Veranstaltung bereits ausgebucht ist. Hierbei handelt es sich um eine serverseitige Prüfung zur Validierung, bereits im Formular bei der Anmeldung sollte dem Nutzer natürlich schon die Information gegeben werden, ob überhaupt noch Plätze frei sind.
199 199  {{/figure}}
200 200  
201 -Nach Installation des Plugins ist ein neuer [[Template-Platzhalter>>doc:Formcycle.UserInterface.Variables]] verfügbar, über den auf den aktuellen Wert der Zähler zugegriffen werden kann. Dies ist zum Beispiel nützlich, um in einer Aktionsbedingung den Zählwert nutzen und prüfen zu können. Der Platzhalter baut sich nach dem folgenden Schema auf:
190 +Nach Installation des Plugins ist ein neuer [[Systemplatzhalter>>doc:Formcycle.UserInterface.Variables]] verfügbar, über den auf den aktuellen Wert eines Zählers zugegriffen werden kann. Dies ist etwa nützlich, um in einer Aktionsbedingung den Zählwert nutzen und prüfen zu können. Der Platzhalter baut sich nach dem folgenden Schema auf:
202 202  
203 203  {{code language="none"}}
204 -[%$$DBCOUNTER.<Zählername>%]
193 +[%$DBCOUNTER.<Zählername>%]
205 205  {{/code}}
206 206  
207 207  Um also etwa auf den Zähler mit dem Namen //test// zuzugreifen, muss der folgende Platzhalter genutzt werden:
208 208  
209 209  {{code language="none"}}
210 -[%$$DBCOUNTER.test%]
199 +[%$DBCOUNTER.test%]
211 211  {{/code}}
212 212  
213 -{{info}}
214 -Bis einschließlich der Version 3.0.0 des Datenbankzähler-Plugins wurden Platzhalter nur über ein Systemplatzhalter-Plugin bereitgestellt und folgten damit dem Schema {{code language="none"}}[%$DBCOUNTER.<Zählername>%]{{/code}}. Diese werden in einer zukünftigen Version des Datenbankzähler-Plugins nicht weiter unterstützt.
215 -{{/info}}
202 +Falls auf einen Zähler zugegriffen werden soll, bei dem nicht bekannt ist, ob es diesen schon gibt, muss der Startwert für den Zähler mit angegeben werden. Falls der Zähler noch nicht existiert, wird dann ein neuer Zähler mit diesem Startwert erstellt. Der Platzhalter baut sich dann nach folgendem Schema auf:
216 216  
217 -== Servlet-Aktions-Plugin / Zugriff auf Zählerwert mittels AJAX-Reques==
204 +{{code language="none"}}
205 +[%$DBCOUNTER(<Zählername>, <Startwert>)%]
206 +{{/code}}
218 218  
219 -{{figure image="11_dbcounter_plugin_servlet_action.png"}}
208 +Angenommen, der Zähler heiße //teilnehmer-2020-03-17// und soll den Wert //0// erhalten, falls er noch nicht existiert. Dann kann der folgende Platzhalter genutzt werden:
209 +
210 +{{code language="none"}}
211 +[%$DBCOUNTER(teilnehmer-2020-03-17, 0)%]
212 +{{/code}}
213 +
214 +Für die Verwendung der Platzhalter innerhalb des Formulars werden
215 +
216 +
217 +
218 +
219 +
220 +
221 +== Servlet-Aktions-Plugin ==
222 +
223 +{{figure image="dbcounter_plugin_servlet_action.png"}}
220 220  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.
221 221  {{/figure}}
222 222  
223 -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. In der [[//Zählerkonfiguration>>||anchor="HEinstellungenimMenFCpunkt22ZE4hlerkonfiguration22"]] wird eine Vorlage für einen {{smallcaps}}Ajax{{/smallcaps}}-Zugriff auf den jeweiligen Zähler bereitgestellt.
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. Die {{smallcaps}}Url{{/smallcaps}} für das Servlet baut sich nach dem folgenden Schema auf:
228 +In der Konfigurationsoberfläche des Zählers wird bereits eine Vorlage für einen {{smallcaps}}Ajax{{/smallcaps}}-Zugriff geliefert.
229 +TODO: Für grun gelten die Regeln
224 224  
225 -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:
226 226  
232 +== Zugriff auf Zählerwert mittels AJAX-Request ==
233 +
234 +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:
235 +
236 +; LastChange
237 +: Gibt an, ob der Servlet-Aufruf erfolgreich war. Der Wert ist ein weiteres {{smallcaps}}Json{{/smallcaps}}-Objekt mit folgenden Einträgen:
238 +
227 227  {{code language="none"}}
228 228  https://<Host>/<FORMCYCLE-Kontextpfad>/plugin?name=Servlet%20Counter&client-id=<Mandant-ID>&id=<Zähler-UUID>
229 229  {{/code}}
230 230  
231 -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:
243 +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}}:
232 232  
233 233  {{code language="none"}}
234 234  https://localhost:8080/xima-formcycle/plugin?name=Servlet%20Counter&client-id=1&id=bc49d3b0-f869-4e59-864e-ddcc2925ed63
235 235  {{/code}}
236 236  
237 -Alternativ ist es auch möglich, statt der //client-id// die {{smallcaps}}id{{/smallcaps}} des Formulars zu verwenden:
249 +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:
238 238  
239 239  {{code language="none"}}
240 240  https://<Host>/<FORMCYCLE-Kontextpfad>/plugin?name=Servlet%20Counter&project-id=<Formular-ID>&id=<Zähler-UUID>
... ... @@ -300,7 +300,6 @@
300 300  
301 301  * Verbesserung der Oberfläche für die Zählerkonfiguration
302 302  * Entfernen der Aktion //Variable ändern//
303 -* Einführen neuer Template-Platzhalter.
304 304  
305 305  === 3.0.0 ===
306 306  
2_Beispiel_Wert.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.gru
Größe
... ... @@ -1,1 +1,0 @@
1 -3.8 KB
Inhalt
3_Beispiel_Aktion.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.gru
Größe
... ... @@ -1,1 +1,0 @@
1 -34.2 KB
Inhalt
4_Beispiel_Aktionen.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.gru
Größe
... ... @@ -1,1 +1,0 @@
1 -47.6 KB
Inhalt
5_Beispiel_Bedingung.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.gru
Größe
... ... @@ -1,1 +1,0 @@
1 -52.5 KB
Inhalt
6_Beispiel_Zahlfeld.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.gru
Größe
... ... @@ -1,1 +1,0 @@
1 -37.5 KB
Inhalt
7_Beispiel_Button.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.gru
Größe
... ... @@ -1,1 +1,0 @@
1 -25.3 KB
Inhalt
Beispiel Zähler.zip
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.gru
Größe
... ... @@ -1,1 +1,0 @@
1 -52.3 KB
Inhalt
BeispielZähler.zip
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.gru
Größe
... ... @@ -1,1 +1,0 @@
1 -52.3 KB
Inhalt