Berechneter Wert, Bedingungen und Variablen

Detail of "Spider web at sunrise" - Luc Viatour / www.Lucnix.be

Berechneter Wert, Bedingungen und Variablen

Mit berechneten Werten, Bedingungen und Variablen Logik ins Formular bringen

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

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 verschiedene Variablen verwenden. Diese werden bei der Anzeige des Formulars durch einen Wert ersetzt.

Berechneter Wert

Beispiel zu berechnetem Wert
Beispiel zu berechnetem Wert

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 selektiert hat. Geben Sie als ersten Parameter den Namen der Auswahl (hier auswahlliste2) und als zweiten den Wert der Option an.
    Beispeil: isSelected(auswahlliste2, „ja“)

Beispiel:

Sie möchten das Alter einer Person zu einem angegebenen 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);
}

Anmerkung: Ihr Formular muss ein Eingabefeld „Geburtsdatum“ enthalten, in das der/die Benutzer/Benutzerin sein Geburtsdatum eingeben kann.

Bei den zu prüfenden Auswahlen kann es sich um eine Einfachauswahl, Mehrfachauswahl oder Auswahlliste handeln.

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

Bedingungen

Bedingungen-Webforms
Bedingungen-Webforms

Das Bedingungselement 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.

Bedingung hinzufügen:

Um eine Bedingung für ein Formularelement festzulegen, müssen sie dieses in die Tabelle von „Wenn“ aufnehmen. Klicken Sie dafür mit der rechten Maustaste in die dargestellte Tabelle bei „Wenn“.

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.

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.

In der Spalte Wert geben Sie einen Vergleichswert ein, oder – im Falle einer Auswahlliste – wählen Sie die entsprechende Option aus.

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 Elements 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.

Um ein neues Formularelement in die Liste aufzunehmen, klicken Sie mit der rechten Maustaste in das Bedingungsfeld der Tabelle „Dann“ und klicken Sie dann auf „Element hinzufügen“

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. Die Auswahl von „Abbrechen“ oder „Beenden“ haben keine Auswirkungen, diese Elemente gibt es in den Formularen nicht.

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 zudem auch nicht ausblendbar.

Variablen

Für die Vorbelegung von Eingabefeldern oder bestimmte Einstellungen einzelner Formularelemente können Sie verschiedene Variablen verwenden. Diese werden bei der Anzeige des Formulars durch einen Wert ersetzt. So können Sie Monday Webforms beispielsweise ein Feld mit dem aktuellen Datum vorbelegen, indem Sie die Variable ${date} in das Feld für die Vorbelegung eintragen. Variablen müssen immer in der Form ${formularfeldname}angegeben werden. Der Formularfeldname muss kleingeschrieben und ohne Sonderzeichen sein.

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

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

  • date: Datum, an dem der/die Benutzer/Benutzerinnen das Formular ausfüllt. Das Ausgabeformat richtet sich nach der vom Benutzer eingestellten Browser-Sprache (Beispiel: deutsch: 30.05.2013).
  • time: Uhrzeit, zu der der/die Benutzer/Benutzerinnen das Formular ausfüllt. Das Ausgabeformat richtet sich nach der vom Benutzer eingestellten Browser-Sprache (Beispiel: deutsch: 17:33).

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

Eingabe: ${date} + ${time} Uhr

Ausgabe, die Ihnen später übermittelt wird: 30.05.2013 18:36 Uhr

Werte von Formularfeldern verwenden

Um die Auswahl einer Auswahlliste, Einfachauswahl oder Mehrfachauswahl in der versendeten Mail ausgeben zu können, muss folgende Syntax benutzt werden:

${auswahlliste?join(", ")}
Bitte beachten Sie, dass beide Anführungszeichen oben sind.

-bitte beachten Sie, wenn Sie den Ausdruck kopieren, dass Sie beide Anführungszeichen neu eingeben. Sie müssen beide oben sein. Andernfalls wird kein Text in der E-Mail zu sehen sein

- dabei steht „auswahlliste“ für den Namen der Liste. Als Format der Mail muss zudem „freetext“ eingestellt sein.

Variablen im Mailversand- vom Nutzer ausgewählte Variablen

Des Weiteren besteht die Möglichkeit, Variablen im Mail-Template so zu verwenden, dass sie nur dann in der versendeten Mail enthalten sind, wenn sie auch vom Nutzer ausgewählt wurden. Hierfür muss folgende Syntax benutzt werden:

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

Achtung, dies hat sich geändert! Die früher bekannte Syntax ist nicht mehr funktionsfähig!

Automatisch ausgefüllte Felder

Sie haben die Möglichkeit, Eingabefelder, in die die TU-ID, Vor- und Nachname und die Mailadresse eingegeben werden sollen, automatisch durch das Identity Management füllen zu lassen. Weitere Informationen dazu finden Sie in dem Artikel „Webforms: Vorbelegung der Inputfelder mit IDM-Daten“.