Änderungen von Dokument Zähler


Von Version 3.6
bearbeitet von gru
am 30.08.2021, 12:35
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 3.7
bearbeitet von gru
am 30.08.2021, 13:13
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Inhalt
... ... @@ -52,3 +52,49 @@
52 52  
53 53  Die Werte von Zählern können über [[Platzhalter:doc>>Formcycle.UserInterface.Variables]] zum Beispiel im Workflow oder als Wert von Formularelementen ausgelesen werden. Die Syntax ist dabei wie folgt:
54 54  {{code language="none"}}[%$COUNTER_CLIENT.<Name des Zählers>%]{{/code}}
55 +
56 +== Zugriff auf Zählerwert per Servlet ==
57 +
58 +Der Wert der Zähler kann innerhalb von Formularen über einen Servletaufruf ermittelt werden. Es ist dabei möglich, den Zähler über seinen Namen oder seine UUID auszuwählen. Die entsprechenden {{smallcaps}}URL{{/smallcaps}}s zum Aufruf der Werte könnten zum Beispiel wie folgt aussehen:
59 +{{code language="none"}}<Serveradresse>/formcycle/form/clientcounter/?frid=<gültige FRID>&name=<Name des Zählers>{{/code}}
60 +{{code language="none"}}<Serveradresse>/formcycle/form/clientcounter/?frid=<gültige FRID>&uuid=<UUID des Zählers>{{/code}}
61 +
62 +In beiden Fällen wird eine gültige //form request id// (frid) benötigt, welche im Formular per JavaScript unter {{code language="none"}}XFC_METADATA.currentSessionFRID{{/code}} zu finden ist. Auf gleiche Art kann zudem die {{smallcaps}}URL{{/smallcaps}} des Servlets per JavaScript unter {{code language="none"}}XFC_METADATA.urls.counter_client{{/code}} ausgelesen werden. Dies ist wichtig, da sich die {{smallcaps}}URL{{/smallcaps}} bei Aufrufen über Frontend- und Masterserver unterscheidet.
63 +
64 +Eine bespielhafte JavaScript-Abfrage, welche den Zählerwert in das Feld //tf1// schreibt, könnte also wie folgt aussehen:
65 +{{code language="javascript"}}
66 +$.ajax({
67 + url:[
68 + XFC_METADATA.urls.counter_client,
69 + "?frid=",
70 + XFC_METADATA.currentSessionFRID,
71 + "&name=Beispielzähler"
72 + ].join(""),
73 + success: function(data, textStatus, jqXHR) {
74 + if (data.success) {
75 + $('[data-name="tf1"]').val(data.result.value);
76 + } else {
77 + console.error("Zugriff auf Zähler Beispielzähler fehlgeschlagen:",data.msg);
78 + }
79 + }
80 +});
81 +{{/code}}
82 +
83 +Neben dem eigentlichen Wert werden auch andere Informationen zurückgegeben. Die Antwort hat die folgende Struktur:
84 +; success
85 +: Boolscher Wert, der aussagt, ob die Werte gesetzt wurden.
86 +; msg
87 +: Servernachricht bezüglich der Anfrage, welche zur Fehlersuche verwendet werden kann. Ein erfolgreicher Zugriff liefert z.B. //Counter found//.
88 +; result
89 +: Antwort auf die Anfrage. Wenn die anfrage erfolgreich war, sind die folgenden Unterpunkte enthalten:
90 +:; lastChange
91 +:: Formatierte Ausgabe von Datum und Uhrzeit der letzten Änderung des Zählerwertes
92 +:; lastChangeTimestamp
93 +:: Epoche der letzten Änderung des Zählerwertes
94 +:; name
95 +:: Name des Zählers
96 +:; uuid
97 +:: UUID des Zählers
98 +:; value
99 +:: Aktueller Zählerwert
100 +