Zähler



Konfigurationsoberfläche zum Anlegen von Zählern: (1) Liste existierender Zähler, (2) Bereich zum Editieren der selektierten Zähler, (3) Metadaten des Zählers.

Die Werte der Zähler können mit der Aktion Zähler ändern verändert und über Platzhalter ausgelesen und so zum Beispiel in Bedingungen verwendet werden.

Anlegen eines Zählers

Öffnen Sie das Modul "Daten > Zähler" und klicken Sie auf die Schaltfläche "Neu" in der Kopfzeile der Liste (siehe Punkt 1 in der Abbildung). Daraufhin können die entsprechenden Einstellungen für den Zähler getroffen werden. Mit einem Klick auf die Schaltfläche Speichern wird der Zähler angelegt.

Konfigurationsoptionen

Name
Name des Zählers
Aktueller Wert
Hier wird der aktuelle Wert des Zählers angezeigt. Nach einen Klick auf das Stiftsymbol kann der Wert angepasst und über ein Klick auf den Haken übernommen werden.
Automatisch zurücksetzen
Wenn diese Option aktiviert wurde, kann über die folgenden Optionen festgelegt werden, unter welchen Bedingungen der Zähl zurückgesetzt werden soll:
Startwert
Wert auf den der Zähler zurückgesetzt werden soll
Bedingung
Bedingung unter welcher der Zähler zurückgesetzt werden soll. Zur Auswahl stehen die folgenden Optionen:
- Zähler größer gleich
- Zähler kleiner gleich
- täglich
- wöchentlich
- monatlich
- jährlich
Entsprechend der hier getroffenen Auswahl werden die folgenden Felder sichtbar:
Wert
Wert mit dem der Zähler verglichen werden soll. Nur verfügbar, wenn Zähler größer gleich oder Zähler kleiner gleich als Bedingung ausgewählt wurde.
um
Uhrzeit, an der das Zurücksetzen stattfinden soll. Nur verfügbar, wenn täglich, wöchentlich, monatlich oder jährlich als Bedingung ausgewählt wurde.
An den Tagen
Wochentag, an dem das Zurücksetzen stattfinden soll. Nur verfügbar, wenn wöchentlich als Bedingung ausgewählt wurde.
Jeweils am
Tag in Monat, an dem der Zähler zurückgesetzt werden soll. Nur verfügbar, wenn monatlich oder jährlich als Bedingung ausgewählt wurde.
Monat
Monat, in dem der Zähler zurückgesetzt werden soll. Nur verfügbar, wenn jährlich als Bedingung ausgewählt wurde.

Unter den Einstellungen werden zudem die folgenden Informationen unter Zähler-Metadaten angezeigt:

UUID
Systeminterne UUID des Zählers
Angelegt am
Zeitpunkt, an dem der Zähler erstellt wurde
Geändert am
Zeitpunkt, an dem zum letzten Mal Änderungen am Zähler vorgenommen wurden

Platzhalter

Die Werte von Zählern können über Platzhalter zum Beispiel im Workflow oder als Wert von Formularelementen ausgelesen werden. Die Syntax ist dabei wie folgt:

[%$COUNTER_CLIENT.<Name des Zählers>%]
 

Zugriff auf Zählerwert per Servlet

Servlet-URL und Parameter

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 URLs zum Aufruf der Werte könnten zum Beispiel wie folgt aussehen:

https://<Serveradresse>/formcycle/form/clientcounter/?frid=<gültige FRID>&name=<Name des Zählers>
und
https://<Serveradresse>/formcycle/form/clientcounter/?frid=<gültige FRID>&uuid=<UUID des Zählers>

In beiden Fällen wird eine gültige form request id (frid) benötigt, welche im Formular per JavaScript unter XFC_METADATA.currentSessionFRID zu finden ist. Auf gleiche Art kann zudem die URL des Servlets per JavaScript unter XFC_METADATA.urls.counter_client ausgelesen werden. Dies ist wichtig, da sich die URL bei Aufrufen über Frontend- und Masterserver unterscheidet.

Rückgabewerte

Das Erebnis wird als JSON zurückgegeben. Neben dem eigentlichen Wert sind auch andere Informationen zurückgegeben. Die Antwort hat die folgende Struktur:

success
Boolscher Wert, der aussagt, ob der Zählerwert erfolgreich ausgelesen werden konnte.
msg
Servernachricht bezüglich der Anfrage, welche zur Fehlersuche verwendet werden kann. Ein erfolgreicher Zugriff liefert z.B. Counter found.
result
Antwort auf die Anfrage. Wenn die Anfrage nicht erfolgreich war, wird nur ein leeres JSON-Objektliteral zurückgegeben. War die Anfrage hingegen erfolgreich, sind die folgenden Unterpunkte im JSON-Objektliteral enthalten:
lastChange
Formatierte Ausgabe von Datum und Uhrzeit der letzten Änderung des Zählerwertes
lastChangeTimestamp
Epoche der letzten Änderung des Zählerwertes
name
Name des Zählers
uuid
UUID des Zählers
value
Aktueller Zählerwert

Beispiel für eine AJAX-Anfrage im Formular

Eine beispielhafte AJAX-Anfrage, welche den aktuellen Zählerwert des Zählers Beispielzähler in das Feld tf1 schreibt, könnte also wie folgt aussehen:

$.ajax({
    method: "GET",
    url: XFC_METADATA.urls.counter_client,
    data: {
        name: "Beispielzähler",
        frid: XFC_METADATA.currentSessionFRID,
    }
}).then(function(data) {
   if (data.success) {
        $('[data-name="tf1"]').val(data.result.value);
    } else {
        console.warn("Zugriff auf Zähler Beispielzähler fehlgeschlagen:", data.msg);
    }
}).catch(function(jqXHR, errorTextStatus, errorThrown) {
    console.warn("Zugriff auf Zähler Beispielzähler fehlgeschlagen:", errorThrown, "(" + errorTextStatus + ")");
});

Einfügen eines Templates für eine AJAX-Anfrage im Formular

Auswahl des Templates für die Zähler-Abfrage im JavaScript-Bereich des Formulardesigners.

Ein Template, welches der obenstehenen Beispielfunktion ähnlich ist, kann per Autocomplete direkt im JavaScript-Bereich des Formulardesigners eingefügt werden. Hierzu muss im JavaScript-Bereich hintereinander Zähler eingegeben werden und die vom Autocomplete vorgeschlagene Option Zähler-Abfrage mit einem Klick oder mit der Enter-Taste bestätigt werden.

Nachdem das Template eingefügt wurde, müssen die benötigten Funktionaltitäten hinzugefügt und der Name des Zählers abgeändert werden.