If/Else Funktion in Texten
If-then/Else Funktion / Variablen als Bedingungen innerhalb eines Texts
myMedax bietet Ihnen die Möglichkeit, innerhalb von Beschreibungstexten Abhängigkeiten zu nutzen.
Hierzu stellen wir Ihnen eine if-then/else Funktion zur Verfügung.
Um in einem Text Bedingungen zu nutzen müssen zunächst mal Fragebogen-Variablen (auch verwendbar nach dem Muster {{inline.variablenname}} ) angelegt werden.
Im Beispiel erhält jede Antwort-Option einen Variablennamen, z.B. answerYes, answerNo und answerMisc.
Achtung: Variablennamen sind immer case-sensitiv, die Groß-/Kleinschreibung wird also berücksichtigt!
Für den Fall dass die Antwortoption “Sonstiges” gewählt wird, welches einer Freitextantwort enspricht wird der Variablenname answerMiscText verwendet.
Im Beschreibungstext (der natürlich auch in jeder anderen Frage des gleichen Fragebogens stehen darf, die Fragebogen-Variablen sind an allen Stellen des Fragebogens verfügbar) wird nun eine IF-Bedingung eingefügt.
Diese beginnt immer mit zwei geschweiften Klammern, einem Raute-Zeichen und dem Schlüsselwort if, also {{#if gefolgt von der Bedingung und zwei geschweiften Klammern }} , gefolgt von dem unter dieser Bedingung anzuzeigenden Text und dem Abschluss der Funktion mit einem {{/if}}.
Es können auch mehrere IFs in Folge gesetzt werden, daher der Text mit den Abhängigkeiten aus dem Beispiel hier nochmal etwas aufgeschlüsselt:
{{#if (eq inline.answerYes true)}}Sie haben Ja gewählt.{{/if}}
{{#if (eq inline.answerNo true)}}Sie haben Nein gewählt.{{/if}}
{{#if (eq inline.answerMisc true)}}Sie haben Sonstiges gewählt und folgendes eingetragen: {{inline.answerMiscText}}.{{/if}}
Statt viele verschiedene IFs zu verwenden können Sie aber auch für “alle anderen Möglichkeiten”, die eben nicht mit IFs abgedeckt wurden, ein ELSE einfügen.
Hierzu folgendes Beispiel einer IF-ELSE-Funktion:
{{#if (eq inline.answerYes true)}}Sie haben Ja gewählt.
{{else}}Sie haben wohl Nein oder Sonstiges gewählt.
{{/if}}
Als Helper bzw. Vergleichsoperatoren in Bedingungen kann man folgende Functions verwenden:
Helper | Bedeutung | Beispiel |
eq | gleich | {{#if (eq var1 "value")}}var1 ist gleich "value"{{/if}} |
ne | nicht gleich | {{#if (ne var1 "value")}}var1 ist nicht gleich "value"{{/if}} |
lt | kleiner als | {{#if (lt numberVar 10)}}Zahl ist kleiner als 10{{/if}} |
gt | größer als | {{#if (gt numberVar 10)}}Zahl ist größer als 10{{/if}} |
lte | kleiner oder gleich | {{#if (lte numberVar 10)}} Zahl ist kleiner als oder gleich 10{{/if}} |
gte | größer oder gleich | {{#if (gte numberVar 10)}} Zahl ist größer als oder gleich 10{{/if}} |
and | und | {{#if (and (eq var1 "value1") (eq var2 "value2"))}}Beide Bedingungen sind wahr{{/if}} |
or | oder | {{#if (or (eq var1 "value1") (eq var2 "value2"))}}Mindestens eine der Bedingungen ist wahr{{/if}} |
dateFormat | formatiertes Datum | Das formatierte Datum ist: {{dateFormat "2023-01-01"}} // 01.01.2023 |
Einen Musterfragebogen mit weiteren Beispielen sowie allen Vergleichsoperatoren können Sie hier herunterladen und in Ihr myMedax importieren.