Bedingungen in Formeln / conditional operator
Um innerhalb einer Formel Bedingungen definieren zu können unterstützen die myMedax Formeln einen sog. conditional operator (auch “ternary” genannt).
Sehr technische Details finden Sie hier: Conditional (ternary) operator - JavaScript | MDN (externer Link)
Beispiel:
Sie möchten eine Multiple-Choice-Frage stellen, deren Antworten alle auf einen Score einen Punkt aufrechnen.
Als “Ergebnis” der Frage möchten sie aber entweder den Wert 0 oder Wert 1 erhalten, egal wieviele Antworten markiert wurden…. also Wert 0 bei “keiner Antwort” und Wert 1 bei 1-n Antworten.
Wir machen ein Beispiel mit der Abfrage nach dem Zustand von Lippen und Zunge.
Bei den Lippen soll Wert 0 (keine Antwort gewählt) oder Wert 1 (eine oder mehrere Antworten gewählt) herauskommen.
Bei der Zunge soll Wert 0 (keine Antwort gewählt) oder Wert 3 (eine oder mehrere Antworten gewählt) herauskommen.
Dazu legen wir zunächst für jede Frage eine Scoring-Variable an (jeweils “Speichern” nicht vergessen):
Nun erstellen wir unsere Fragen und verknüpfen die Antworten mit dem jeweiligen Scoring um dort Werte einzutragen:
Die Frage nach dem Lippenstatus bzw. die Variable scoring.lippen kann also nun Werte zwischen 0 und 3 annehmen (3 als Maximalwert wenn alle 3 Antworten jeweils 1 Punkt auf die Variable scoring.lippen zählen)
Gleiches machen wir für die Variable scoring.zunge und die zugehörige Frage und Antworten.
Nun erstellen wir entsprechende Formeln und verwenden dort den conditional operator:
Dieser funktioniert wie folgt:
Zunächst wird die Bedingung formuliert, also z.B. (scoring.lippen > 0), gefolgt von einem Fragezeichen ? und dann von zwei Werten: der erste Wert wird ausgegeben, wenn die Bedingung “wahr” (true) ist, der zweite mit einem Doppelpunkt abgegrenzte Wert wird ausgegeben, wenn die Bedigung “falsch” (false) ist.
Die Bedingung darf natürlich deutlich komplexer sein, in der Klammer vor dem Vergleichsoperator (hier gibt es die üblichen wie bei den sonstigen myMedax Bedingungen, also größer, kleiner, größer/kleiner gleich, gleich, ungleich) können also auch ganze Formeln stehen, also addierte Scoring-Variablen etc.
Und auch der “Wert” der hinter dem Fragezeichen steht darf komplexer sein und kann statt einer Zahl auch wieder eine Formel sein.
Die Werte der Variablen können natürlich wie üblich im Text verwendet werden: