Verhalten

Verhalten definieren eine erweiterte Logik für ein Formularelement. Im Allgemeinen verknüpft die Verhaltenskonfiguration die folgenden drei Komponenten:

  1. Auslöser (z. B. Angeklickt oder Geändert), die bestimmen infolge welcher Ereignisse das Verhalten ausgeführt werden soll.

  2. Eine als Verhaltensweise bezeichnete Auswertungslogik (z. B. Gefüllt mit oder Einträge ausgewählt), die immer einen Wahrheitswert (wahr/true oder falsch/false) und ggf. auch bestimmte "Verhaltensdaten" liefern.

  3. Aktionen (z. B. Hinweis anzeigen oder Wert setzen), die abhängig vom Wahrheitswert aus der Verhaltensweise - als Aktionen bei "wahr" oder Aktionen bei "falsch" - ausgeführt werden.

Bezeichnend ist, dass die Konfiguration eines Verhaltens keinen oder mehrere Auslöser und auch keine oder zahlreiche Aktionen spezifizieren kann, aber immer genau eine Verhaltensweise adressieren muss. Wegen dieser engen (1:1)-Beziehung zwischen einem Verhalten und der darin adressierten Verhaltensweise ist in einem vereinfachten Sprachgebrauch im Produkt wie im Handbuch gelegentlich von "Verhalten" die Rede, wo eigentlich eine Verhaltensweise gemeint ist.

HINWEIS◄ Werden für dasselbe Element mehrere Verhalten mit demselben Auslöser definiert, werden diese ihrer Reihenfolge nach (von oben nach unten) ausgeführt.

Einfaches Beispiel

Die Abbildung zeigt eine Beispielkonfiguration für ein Verhalten "Hinweise Luftfracht", das beim Klick auf den Button, für den es konfiguriert wurde, überprüft, ob das Textfeld "Frachtart" (Element #3) mit dem Wert "AIR" gefüllt ist. Ist das der Fall (also: bei "wahr"), wird ein Hinweis angezeigt, dessen Konfiguration hier nicht im Detail interessiert.

images/download/attachments/189435639/image-2024-10-22_11-40-23-version-1-modificationdate-1729590022699-api-v2.png

Details (von oben nach unten):

  • Über die Symbole images/s/-95e2zf/9012/8yg2g7/_/images/icons/emoticons/add.svg und images/s/-95e2zf/9012/8yg2g7/_/images/icons/emoticons/forbidden.svg kann ein neues Verhalten hinzugefügt oder ein bestehendes entfernt werden.


  • Der graue Rahmen umfasst ausgehend von der Kopfzeile das gesamte Verhalten im aufgeklappten Zustand. Der Name wird unterhalb im Feld Verhaltensname festgelegt. Er dient einerseits zur Identifikation des Verhaltens vor allem im zugeklappten Zustand, dient andererseits in bestimmten Fällen aber auch als Referenz auf das Verhalten (z. B. durch die Verhaltensweise Logische Verknüpfung oder die Aktion Verhalten ausführen).

    HINWEIS◄ Sind für dasselbe Formularelement mehrere Verhalten konfiguriert, können diese per Drag&Drop an der Kopfzeile umsortiert werden. Per Shortcut kann man ausgewählte Verhalten auch komplett kopieren (Strg+C), ausschneiden (Strg+X) und einfügen (Strg+V). Eine Kopie kann außerdem per Drag&Drop mit gehaltener Strg-Taste erstellt werden.


  • Das Feld Auslöser definiert Auslöser für das Verhalten per Mehrfachauswahl. Die Auswahlmöglichkeiten hängen vom Typ des übergeordneten Formularelements ab, das auch als ausführendes Element des Verhaltens bezeichnet wird. Im Beispiel soll das Anklicken des Buttons als Auslöser dienen. Das Feld Auslöser kann auch leer bleiben, wenn ein Verhalten ausschließlich durch andere Logiken aufgerufen werden soll, etwa die Verhaltensweise Logische Verknüpfung oder die Aktion Verhalten ausführen.


  • Im Feld Einmalig verzögert ausführen (ms) kann eine optionale Verzögerungszeit als Ganzzahl in Millisekunden (ms) eingetragen werden, die eine sogenannte "Entprellung" (Debounce) für die Ausführung der Verhaltensweise bewirken soll. Jedesmal wenn einer der Auslöser des Verhaltens anschlägt, wird ein Timer mit der angegeben Verzögerungszeit gestartet. Die Abarbeitung der Verhaltensweise startet also nur dann, wenn bis zum Ablauf dieses Timers keine weitere Auslösung erfolgt. Ein typischer Anwendungsfall für diese Technik ist die gemeinsame Auswertung von Tastatureingaben für ein Textfeld, bei der die eingegebene Zeichenfolge oft erst dann verarbeitet werden soll, wenn innerhalb der Verzögerungszeit keine weiteren Zeichen bzw. Tastendrücke mehr nachfolgen (siehe Auslöser Geändert).

  • Auf die Verzögerung warten: Wird eine solche Verzögerung (Wert > 0) angegeben, wartet eine Aufrufende Instanz nicht auf die Abarbeitung des Verhaltens, wenn die eingeblendete Option "Auf die Verzögerung warten" nicht aktiviert wird. Direkte Auswirkungen hat diese Option z.B. beim Ausführen eines solchen Verhaltens durch eine Aktion oder beim Laden von Formulardaten.


  • Der Abschnitt Verhalten, der zusammengeklappt werden kann, definiert die Verhaltensweise, die den logischen Kern des Verhaltenskonfiguration darstellt. Häufig hat die Verhaltensweise einen auswertenden oder bewertenden Charakter, so dass ein Element als Bezugsobjekt verknüpft werden muss, wenn die Verhaltensweise nicht "reflexiv", also mit Bezug zum ausführenden Element arbeiten soll. Im Beispiel wurde die Verhaltensweise Gefüllt mit ausgewählt, die Angaben zu einem Vergleichswert (hier: "AIR") und eine Verknüpfung zum Bezugsobjekt der Auswertung (hier:Textfeld "Frachtart" alias Element #3) vorsieht.

    Die Verknüpfung zu einem Formularelement wird durch einen Klick auf das Kettensymbol eingeleitet, wenn noch keine Verknüpfung besteht. Danach muss das Zielelement direkt oder in der Baumstruktur des Formulareditors angeklickt werden, um die Verknüpfung herzustellen. Eine bestehende Verknüpfung wird durch einen Klick auf das zugehörige Kettensymbol entfernt.


  • Die Abschnitte Aktionen bei "wahr" und Aktionen bei "falsch" definieren optional je eine Liste von Aktionen für das betreffende Bewertungsergebnis der Verhaltensweise. Zur Laufzeit wird immer genau eine dieser Listen sequentiell abgearbeitet, solange nicht ein Fehler zum Abbruch der Verarbeitung führt.

    HINWEIS◄ Bereits konfigurierte Aktionen können per Drag & Drop in und zwischen diesen Listen verschoben und per Shortcuts kopiert (Strg+C), ausgeschnitten (Strg+X) und eingefügt (Strg+V) werden. Das Kopieren von Aktionen ist auch per Drag & Drop mit gehaltener Strg-Taste möglich.