Berechneter Wert, Bedingung und Variablen

Berechnete Werte sind Werte, die nicht direkt eingegeben wurden, sondern mittels eines JavaScripts aus den anderen Formularwerten berechnet werden.

Bedingungen ermöglichen es Ihnen, den Zustand einzelner Formularelemente in Abhängigkeit zur Benutzereingabe zu verändern.

Für die Vorbelegung von Eingabefeldern können Sie Variablen verwenden. Diese werden bei der Anzeige des Formulars durch einen Wert ersetzt.

Wiederkehrende allgemeine Formularelementeigenschaften werden bei den Formularelementen erläutert.

Eingabemaske
Eingabemaske

Bei diesem Element handelt es sich um einen Wert, der nicht direkt von dem Nutzenden eingegeben werden kann, sondern mittels eines JavaScripts aus den anderen Formularwerten berechnet wird.

Anzeigevariante
Hier können Sie durch die Variante „schmal“ eine entsprechende Darstellung des Feldes im Formuar realisieren.

JavaScript
Hier können Sie mit Hilfe von JavaScript die gewünschte Funktion erstellen. Mehr hierzu weiter unten.

Wert im Formular anzeigen
Durch Aktivierung dieser Option legen Sie fest, dass das Ergebnis der Berechnung im Formular angezeigt wird.

Sofortige Neuberechnung des Wertes im Browser
Durch Aktivierung dieser Option legen Sie fest, dass der Wert sofort neu berechnet wird, sobald der Anwender seine Eingaben ändert, die bei der Berechnung des Wertes verwendet werden. Die Berechnung erfolgt in diesem Fall browserseitig, das heißt ohne dass der Anwender das Formular absenden muss. Diese Option müssen Sie auch aktivieren, wenn Sie den Wert einer Bedingung verwenden.

JavaScript

Nachdem Sie das Element neu angelegt haben, enthält das Feld JavaScript die leere Methode calculate(). Dabei handelt es sich um eine JavaScript-Funktion, die bei jedem Absenden (Seitenwechsel und Klick auf den Absenden-Button) des Formulars ausgeführt wird. Innerhalb der Funktion können Sie die Berechnungslogik eingeben.

Folgende vordefinierte Funktionen werden von Webforms zur Verfügung gestellt:

  • parseAge(datumsformat, datum):
    Diese Funktion wandelt das eingegebene Datum in das das Alter der Person um. Als erster Parameter muss das zugrunde liegende Datumsformat und als zweiter das Datum (kann auch eine Variable eines Datumsfeldes im Formular sein) angegeben werden.
    Beispiel: parseAge(„dd.MM.yyy“, „18.12.1969“)
  • parseDate (datumsformat, datum):
    Diese Funktion wandelt die Eingabe in das Datumsformat um. Als erster Parameter muss das zugrunde liegende Datumsformat und als zweiter das Datum (kann auch eine Variable eines Datumsfeldes im Formular sein) angegeben werden.
    Beispiel: parseDate („dd.MM.yyy“, „18.12.1969“)
  • isEmptyList(referenzname):
    Mit dieser Funktion können Sie überprüfen, ob der/die Benutzer/Benutzerin in der angegebenen Auswahl etwas ausgewählt hat oder nicht. Als Parameter wird hier der „Name“ des Auswahlfeldes (hier auswahlliste2), welches Sie überprüfen wollen, benötigt.
    Beispiel: isEmptyList(auswahlliste2)
  • isSelected(referenzname, wert):
    Mithilfe dieser Funktion können Sie überprüfen, ob der/die Benutzer/Benutzerin eine bestimmte Option einer Auswahl (Einfachauswahl, Mehrfachauswahl oder Auswahlliste) selektiert hat. Geben Sie als ersten Parameter den Namen der Auswahl (hier auswahlliste2) und als zweiten den Wert der Option an.
    Beispiel: isSelected(auswahlliste2, „ja“)

Weiteres Beispiel:

Sie möchten das Alter einer Person zu einem angegebenen Geburtsdatum (Eingabefeld „geburtsdatum“) ausrechnen, um dieses anschließend in einer Bedingung zu verwenden, so erreichen Sie dies durch die folgende Funktion:

function calculate(){
  return parseAge(„yyyy.MM.dd“, geburtsdatum);
}

Sie können auch Ihre eigene Rechnung zusammensetzen, ein Beispiel dazu sehen Sie auf dem Bild rechts. Das Produkt aus den Eingabefeldern a und b soll berechnet werden.

Beispiel
Beispiel
Eingabemaske
Eingabemaske

Das Element Bedingung ermöglicht es Ihnen, den Zustand einzelner Formularelemente in Abhängigkeit zur Benutzereingabe zu verändern.

Wenn

Bedingung, die erfüllt sein muss, damit die im Feld Dann aufgeführten Formularelemente den für sie definierten Zustand einnehmen.

Eine Bedingung hinzufügen:

  1. Mittels Rechtsklick in das freie Feld der Bedingungen können Sie eine neue hinzufügen.
  2. Durch einen Doppelklick in die erste Zelle der neu hinzugefügten Zeile öffnet sich eine Auswahlbox. Wählen Sie hier das Formularelement aus, das Sie in die Bedingung aufnehmen möchten.
  3. In der Spalte Operator können Sie den logischen Operator der Bedingung festlegen. Dieser wird auf den in der Spalte Wert angegebenen Vergleichswert angewendet. Je nachdem, ob es sich bei dem Feld um eine Auswahl oder ein Texteingabefeld handelt, werden Ihnen hier unterschiedliche Operatoren angeboten, wie beispielsweise „ist leer“, „ausgewählt“, „weniger ausgewählt als“, etc.
  4. In der Spalte Wert geben Sie einen Vergleichswert ein, oder – im Falle einer Auswahlliste – wählen Sie die entsprechende Option aus.
  5. Bei mehr als einer logischen Bedingung können Sie mittels den Radio-Buttons unterhalb der Tabelle „Wenn“ auswählen, ob eine oder alle Bedingungen erfüllt sein müssen, damit der Zustand des/der Elements/e unter „Dann“ geändert wird.

Dann

Die in dieser Liste aufgeführten Formularelemente nehmen den für sie definierten Zustand ein, wenn die oben in Tabelle „Wenn“ genannte Bedingung zutrifft.

Neues Element hinzufügen:

  1. Um ein neues Formularelement in die Liste aufzunehmen, wählen Sie den entsprechenden Befehl aus dem Kontextmenü mittels Rechtsklick in den leeren Bereich der Tabelle „Dann“ aus.
  2. Durch einen Doppelklick in die erste Zelle der neu hinzugefügten Zeile öffnet sich eine Auswahlbox. Wählen Sie hier das Formularelement aus, für welches Sie den Zustand abhängig von der Erfüllung der vorher definierten Bedingung(en) verändern wollen.
  3. In der Spalte Zustand können Sie den gewünschten Zustand des Elements, wenn die Bedingung zutrifft, festlegen. Je nach Art des gewählten Formularelements werden Ihnen hier unterschiedliche Zustände angeboten, wie beispielsweise „Eingeblendet“, „Optional“, „Pflichtfeld“, etc.
    Hinweis: Die Zustände „Optional“, „Pflichtfeld“, „Änderbar“ und „Schreibgeschützt“ können Sie nur dann über Bedingungen für Formularelemente festlegen, wenn dies nicht bereits in den Elementeinstellungen selbst als Pflichtfeld bzw. Änderbar usw. deklariert wurde.

Ausgeblendete Formularfelder werden auch in Zusammenfassungen und in versendeten E-Mails ausgeblendet. Werte aus deaktivierten Formularfeldern werden ignoriert.

Wenn ein kompletter Teil des Formulars ausgeblendet wird, welches mit einem Layout getrennt ist, verschwinden die Trennlinien nicht, da man das Element Layout nicht ausblenden kann.

Komplette Seiten sind ebenfalls nicht ausblendbar.

Für die Vorbelegung von Eingabefeldern oder die Ausgabe in Mailversandaktionen können Sie Variablen verwenden. Diese werden bei der Anzeige des Formulars durch einen Wert ersetzt. Variablen müssen immer in der Form ${formularfeldname} angegeben werden. Der Formularfeldname muss kleingeschrieben werden und darf keine Sonderzeichen enthalten.

Alle Variablen können mit zusätzlichem Text oder anderen Variablen kombiniert werden.

Folgende Variablen stehen Ihnen standardmäßig zur Verfügung.

  • date: aktuelles Datum
  • time: aktuelle Uhrzeit in UTC(!)
  • serverTime: aktuelle Server-Zeit
  • clientTime: aktuelle Zeit des Anwenders

Das Ausgabeformat richtet sich jeweils nach der vom Benutzer eingestellten Browser-Sprache (Beispiel für Deutsch: 30.04.21, 15:59)

Möchten Sie beispielweise Datum und Uhrzeit als Vorbelegung eines Feldes verwenden, so können Sie dies durch folgenden Eintrag im Feld „Wert“ erreichen:

${date}, ${clientTime} Uhr

Ausgabe, die Ihnen später übermittelt wird: 22.06.22, 13:36 Uhr

Mailversand: prüfen, ob Feld ausgefüllt worden ist

Sie können Variablen im Nachrichtentext des Mailversands so verwenden, dass sie nur dann ausgegeben werden, wenn sie vom Nutzer ausgefüllt worden sind. Hierfür muss folgende Syntax benutzt werden:

<#if formularfeldname?has_content>Feldname: ${formularfeldname}</#if>