Actions

Translations

Translations:Setting conditions/2/de

From LimeSurvey Manual

Grundlagen

Eine Frage kann so konfiguriert werden, dass sie nur angezeigt wird, wenn eine bestimmte Bedingung erfüllt wird. Bedingungen können in allen Umfragetypen verwendet werden: Frage-für-Frage, Gruppe-für-Gruppe und Alles-auf-einer-Seite Umfragen. Bei den Fragetypen Gruppe-für-Gruppe und Alles-auf-einer-Seite werden die Bedingungen teilweise im Browser des Benutzers ausgewertet (durch Javascript). In diesem Fall werden die betreffenden Fragen abhängig von den vorhergehenden Antworten dynamisch ein- und ausgeblendet.

Sie können komplexe Bedingungen erzeugen, indem Sie sie miteinander kombinieren. Hierfür müssen Sie verstehen, wie verschiedene Bedingungen kombiniert und ausgewertet werden (ob sie ODER bzw. UND-verknüpft sind).

Ein englischer Beispielfragebogen, der die Verwendung von Bedingungen demonstriert, kann hier heruntergeladen und zum Testen in LimeSurvey importiert werden (Tab "importieren" beim Anlegen eines neuen Fragebogens): LimeSurvey_sample_survey_Conditions.lss

Der einfachste Fall: das Default Szenario

Lassen Sie uns zu Beginn das Default Szenario erklären:

  • wenn Sie verschiedene Bedingungen haben, werden diese miteinander UND-verknüpft, wenn die zu prüfenden Werte unterschiedlich sind
    • Dies ist zum Beispiel der Fall bei verschiedenen Bedingungen die von unterschiedlichen Antworten der vorhergehenden Fragen abhängen: "Wenn Antwort Frage1 entspricht 'Sehr glücklich' UND Antwort Frage2 entspricht 'Glücklich'"
  • Verschiedene Bedingungen werden ODER-verknüpft, wenn ihre zu prüfenden Werte gleich sind
    • Dies ist zum Beispiel der Fall bei verschiedenen möglichen Antworten auf die gleichen vorhergehenden Fragen: "Wenn Antwort Frage1 entspricht 'Sehr glücklich' ODER Antwort Frage1 entspricht 'Glücklich'"

Im "Fragen Fenster" haben Sie verschiedene Optionen zur Auswahl.

  • Wenn Sie eine ODER-verknüpfte Bedingung zwischen Fragen erzeugen möchten, wählen Sie eine entsprechende Zeile mit dem Vermerk "[Gruppe von Ankreuzfeldern]". Anschließend wählen Sie diejenigen Fragen, die ODER-verknüpft werden sollen, aus dem "Antworten Fenster".
  • Wenn Sie eine UND-verknüpfte Bedingung zwischen Fragen erzeugen möchten, wählen Sie eine entsprechende Zeile mit dem Vermerk "[Einfaches Ankreuzfeld]" und anschließend im "Antworten Fenster", ob die Antwort angekreuzt sein soll oder nicht.

Nun möchten Sie vielleicht auch ODER-verknüpfte Bedingungen erzeugen, auch wenn diese die gleichen Werte für die Bedingungen nutzen: hier kommt die Szenario-Funktion ins Spiel.

Verschiedene Szenarien verwenden

Standardmäßig werden alle Bedingungen, die Sie hinzufügen, zum gleichen Default Szenario (Szenario Nummer 1) hinzugefügt und Bedingungen die zu diesem Szenario gehören, werden nach der oben beschriebenen Logik miteinander kombiniert.

Sie können aber auch Bedingungen in anderen Szenarien definieren. In diesem Fall werden die Bedingungen wie folgt ausgewertet:

  • innerhalb eines Szenarios werden mehrfache Bedingungen wie im Default Szenario beschrieben ausgewertet: dies hilft, um jedes Szenario unabhängig voneinander auszuwerten
  • anschließend wird das komplexe Mehrfach-Szenario als "Wahr" ausgewertet, wenn mindestens eines der Einzel-Szenarien das Ergebnis "Wahr" zurückliefert

Sie können nun nachvollziehen, wieso das Wort "Szenario" verwendet wird: eine komplexe Mehrfach-Szenarien Bedingung liefert dann "Wahr" zurück, wenn mindestens ein ausgewertetes Szenario "Wahr" zurückliefert.

File:Multi scenario.png

Ein Fragen-Eintrag ist entweder:

  • eine einfache Frage (alle Fragentypen, außer Matrix-Fragen)
    • zum Beispiel: Text-Fragen, Optionsfelder oder Auswahllisten, and natürlich Multiple-Choice-Fragen
  • oder eine Zeile in einer Matrix-Frage (außer Dual-Matrix-Fragen und Matrix (Multi-Flexible) Fragen,
    • zum Beispiel: Matrix mit 5 Optionsfeldern, Matrix mit flexibler Beschriftung
  • oder entweder der linke Teil oder der rechte Teil eine Dual-Matrix-Frage
  • oder jede Zelle einer flexiblen Matrix Frage

Zur Vereinfachung werden Fragen-Einträge einfach "Fragen" genannt und als Liste mit dieser Bezeichnung im Formular "Bedingungen hinzufügen/bearbeiten" zu finden.

Sie können diese Bedingungen setzen, indem Sie auf das Bedingungen Symbol in der Fragen Symbolleiste klicken, wenn Sie sich eine Frage anschauen. Sobald Sie Bedingungen für diese Frage setzen auswählen, öffnet sich die Bedingungen Anzeige, mit deren Hilfe Sie Bedingungen für die aktuelle Frage erzeugen oder löschen können. Unten finden Sie ein Beispiel.

Existierende Bedingungen

Der obere Bereich des Fensters zeigt alle Bedingungen, die bereits für diese Frage gesetzt sind:

File:Existing conditions.png

Im obigen Beispiel wird die Frage B nur angezeigt, wenn:

  • die Antwort im Fragen-Eintrag FBI der vorhergehenden Frage A eine "1" ist
  • UND
    • ENTWEDER die Antwort im Fragen-Eintrag CIA der vorherigen Frage A eine "5" ist
    • ODER die Antwort im Fragen-Eintrag CIA der vorherigen Frage A eine "3" ist

Sie können diese Bedingung durch Drücken des "Löschen" Knopfes entfernen.

Im Bearbeiten/Hinzufügen Modus File:Conditions add.png sind einige spezfische Aktionen für jede anzeigte Zeile möglich, wie z.B.:

  • Bedingung bearbeiten File:Conditions add.png
  • alle Bedingungen löschen , diese Bedingung löschen , alle Bedingungen dieses Szenarios löschen
  • Szenario bearbeiten

Im Kopiermodus ist jede Zeile mit einem Ankreuzfeld versehen, mit dessen Hilfe Sie diejenigen Fragen auswählen können, die Sie zu einer späteren Frage kopieren möchten:

File:Copying conditions.png

Neue Bedingungen

Auswählen des Szenarios

Zuerst wählen Sie das Szenario aus, in dem Sie eine neue Bedingung erstellen möchten.

Wenn Sie keine ODER verknüpften Bedingungen zwischen verschiedenen Fragen benötigen, verändern Sie das Default Szenario, das automatisch im Bedingungseditor ausgewählt ist, einfach nicht ()

Im Gegenzug dazu müssen Sie den Knopf "Neues Szenario" File:Plus.png drücken, um eine Bedingung in einem anderen Szenario zu erzeugen. Geben Sie die Szenarien-Nummer ein: File:Default scenario edit.png

Die Szenarien-Nummer ist nicht wichtig und verschiedene Szenarien müssen keine fortlaufenden IDs haben.

Frage auswählen

Wählen eine Frage aus der 'Fragen' Box aus, die Sie in Ihrer Bedingung verwenden möchten.

Beachten Sie, dass (wie oben beschrieben) eine einfache Matrix-Frage aus mehreren Zeilen in der Fragen-Box bestehen kann: dies wirkt sich darauf aus, wie Bedingungen ausgewertet werden.

Wenn eine Frage selektiert wurde, werden die vordefinierten Antworten für diese Frage in der unteren Antworten-Liste angezeigt. Wenn die gewählte Frage keine vorgegebenen Antworten enthält, wird stattdessen der Tab "Erweitert" angezeigt.

Den Vergleichsoperator auswählen

Es können verschiedene Vergleichsoperatoren verwendet werden:

  • Die grundlegenden sind "Entspricht" und "Entspricht nicht"
  • Die Größer / Kleiner Operatorenfamilie ist ebenfalls verfügbar und ist dann sinnvoll, wenn numerische Frageneinträge verglichen werden
    • Bitte beachten Sie, dass der Vergleich von numerischen Felder die Größe der Zahlen verwendet (nicht deren ASCII-Werte), z.B. 2 < 10
    • Wenn Sie einen Frageneintrag vom Typ "Text" verwenden, wird die Bedingung ergeben: "2" > "10" (Vergleich der ASCII-Werte zweier Strings)
    • Numerische Fragen und Textfragen mit dem aktivierten Attribut "Nur Zahlen erlaubt", werden numerisch verglichen
  • Ein erweiterter Vergleichsoperator mit regulären Ausdrücken ist ebenfalls verfügbar. Wenn dieser ausgewählt ist, schaltet der Eingabebereich automatisch in den erweiterten Modus.

Eine Antwort auswählen

'Vordefinierte Antworten' verwenden

Hier können Sie eine oder mehrere vordefinierte Antworten auswählen:

  • die möglichen Antworten für diese Frage
    • Wählen Sie die Antwort, die Sie verwenden möchten
    • Sie können mehrere Antworten auswählen, in dem Sie beim Klicken die CTRL-Taste gedrückt halten

Den 'Erweiterten TAB' verwenden

Geben Sie den Text ein, den Sie für den Vergleich als Operanden auf der rechten Seite verwenden möchten:

  • einen einfachen Text
  • eine Zahl (der Vergleich wird auf Basis des numerischen Wertes durchgeführt, wenn der gewählte Frageneintrag einen numerischen Typ besitzt)
  • ein SGQA tag Verweis auf eine vorhergehende Frage. In diesem Fall wird diese Bedingung gegenüber einer älteren Frage (z.B.: zeige diese Frage an, wenn die Antwort der vorhergehenden "Datum-2 Frage" größer ist als die Antwort der vorhergehenden "Datum-1 Frage")
  • Wenn der Vergleichs-Operator regulärer Ausdruck gewählt wurde, dann muss dieses Eingabfeld mit einem gültigen regulären Ausdruck gefüllt sein

Klicken Sie anschließend auf den Knopf "Bedingung hinzufügen".

Bedingungen bearbeiten/löschen

Neben dem Hinzufügen von neuen Bedingungen kann der Hinzufügen/Bearbeiten Knopf verwendet werden um

  • Bedingungen zu bearbeiten
  • Bedingungen zu löschen
  • Szenarien zu bearbeiten

Bedinungen bearbeiten

Durch das Anklicken des Bearbeiten-Symbols in einer Bedingungs-Zeile wird das Formular zur Bearbeitung der gewählten Bedingung unten eingeblendet. Beachten Sie, dass Sie in diesem Modus nur eine vordefinierte Antwort wählen können. Klicken Sie auf den Knopf "Bedingung aktualiseren", um die Änderungen zu übernehmen.

Bedingungen löschen

Sie können:

  • eine einzelne Bedingung löschen, indem Sie das Symbol anklicken
  • alle Bedingungen innerhalb eines Szenarios löschen, indem Sie das Symbol anklicken
  • alle Bedingungen der Frage löschen, indem Sie das Symbol anklicken

Szenario bearbeiten

Die dem Szenario zugewiesene Nummer können Sie über das Symbol verändern. Bearbeiten Sie den Wert einfach im daraufhin eingeblendeten Formular in der gleichen Zeile.

Alternativ dazu können Sie die Szenarien durch Anklicken des Symbols neu numerieren.

Wie bereits erwähnt, haben die Szenario-Nummern keinerlei Einfluss auf die Art und Weise, wie Bedingungen ausgewertet werden. Trotzdem kann das Verändern der Szenario-Nummern wichtig sein um:

  • zu entscheiden, in welche Reihenfolg das Szenario angezeigt wird, wenn die Druckversion der Umfrage ausgewählt wird
  • Bedinungen aus zwei Szenarionen zusammenzuführen (um z.B. das Szenario 10 mit dem Szenario 1 zu verschmelzen, geben Sie dem Szenario 10 einfach die neue Szenario-Nummer 1)

Bedingungen zu späteren Fragen kopieren

Es ist nicht ungewöhnlich, dass eine Gruppe von Fragen die gleiche Bedingung besitzt. Glücklicherweise können Sie diese Bedingung zu jeder nachfolgenden Frage im Bedingungs-Designer kopieren, sobald sie zum ersten mal gesetzt wurde.

Wechseln Sie in den Kopiermodus, indem Sie das entsprechende Symbol anklicken .

File:Copy conditions example.png

Die Bedingungen, die der aktuellen Frage zugewiesen wurden, werden mit einem Ankreuzfeld auf ihrer linken Seite angezeigt. Sie können damit:

  • jede einzelne Bedingung individuell selektieren, indem Sie das Ankreuzfeld neben der gewünschten Bedingung ankreuzen
  • oder alle Bedingungen eines Szenarios auf einmal auswählen, indem Sie das Ankreuzfeld neben dem Szenario aktivieren

Anschließend selektieren Sie alle darauffolgenden Fragen der Umfrage, in die Sie die selektierten Bedingungen kopieren möchten, indem Sie die gewünschten Fragen in der unteren Liste selektieren (durch gleichzeitiges Drücken der STRG-Taste können Sie mehrere Fragen auswählen). Anschließend klicken Sie auf den "Bedingungen kopieren" Knopf, um das Kopieren der Bedingungen durchzuführen.

Sie sollten dies erst tun, wenn Sie alle Ihre Fragen erstellt haben und mit der Reihenfolge der Fragen zufrieden sind.

Dinge die beachtet werden sollten

Generelle Abwägungen

Es gibt einige grundlegende Regeln, die Sie im Hinterkopf haben sollten, bevor Sie Bedingungen für eine Frage definieren:

  • Sobald auch nur eine einzige Bedingung für eine Frage gesetzt wurde, wird die Frage nicht angezeigt bist die Bedingung erfüllt ist
  • Bedingungen können nur auf Fragen basieren, die vor der Frage erscheinen, für die die Bedingung gesetzt werden soll
  • Sie können Bedingungen auch noch nach Aktivierung einer Umfrage bearbeiten. Dies sollte aber mit größter Vorsicht geschen, da es hier keinen Konsistenz-Check gibt.

Bedingungen die die vordefinierte Antwort "Keine Antwort" verwenden

Die Bedingung "Zeige Frage Q20 wenn die Antwort zu Frage Q1 ist gleich 'Keine Antwort'", meint dies wirklich "Zeige Frage Q20 wenn Frage Q1 angezeigt wird und keine Antwort eingegeben wurde". Dies ist nicht das gleiche wie "Zeige Frage Q20 wenn Frage Q1 nicht angezeigt wird".

Verkettete Bedingungen

Wenn Sie Bedingungen auf Fragen setzen, denen bereits andere Bedingungen zugeordnet wurden, kann es zu Situation kommen, dass Ihre Umfrage sich nicht so verhält, wie Sie es erwartet hätten.

Im obigen Beispiel wird eine Frage angezeigt 'Mögen Sie es ein Mann zu sein?", welcher eine Bedingung zugeordnet wurde, die besagt, dass die Frage nur angezeigt wird, wenn auf die Frage Wie ist Ihr Geschlecht? mit M geantwortet wurde. Wenn Sie nun einer späteren Frage eine Bedingung zuweisen, die eine bestimmte Antwort auf die Frage Mögen Sie es ein Mann zu sein? überprüft, so wird diese Frage niemals angezeigt werden, da die Frage Mögen Sie es ein Mann zu sein? niemals angezeigt wird, wenn als Geschlecht W eingegeben wurde.

Es wird dringend angeraten, dass Sie die Bedingungen der vorhergehenden Frage zu der gewünschten Frage kopieren.

Im obigen Beispiel möchten Sie das folgende erreichen:

  • Q1 ist eine Frage nach dem Geschlecht
  • Q2 ist eine Ja/Nein-Frage und wird angezeigt, wenn Q1 gleich "Männlich" ist
  • Q3 ist eine Ranglisten-Frage und wird angezeigt, wenn Q2 mit Ja beantwortet wurde

Was Sie dagegen wirklich als Bedingungen hinterlegen sollten ist folgendes:

  • auf Q2: zeige Frage, wenn Antwort Q1 ist "Männlich"
  • auf Q3: zeige Frage, wenn Antwort Q1 ist "Männlich" UND Antwort Q2 ist "Ja"

Nach der Korrektur sollte die richtige Bedingung für Q3 folgendermaßen aussehen:

Wenn Sie also eine komplizierte Umfrage mit einer großen Zahl an Bedingungen entwerfen, so testen Sie sie bitte mit allen nur erdenklichen Kombinationen an Antworten.

Grenzen und Workarounds

Fortschrittsbalken

Wenn Sie eine Umfrage erstellen, bei der viele Fragen aufgrund von Bedingungen übersprungen werden, so wird der Fortschrittsbalken in großen Schritten voranschreiten, oder die Umfrage endet schon bei 50%. Um ein solches Verhalten zu verhindern, sollten die Fragen, die übersprungen werden können, so zwischen den angezeigten Fragen platziert werden, so dass nur ein oder zwei Fragen pro Antwort übersprungen werden können.

Zum Beispiel: basierend auf Frage 1 (Ja oder Nein Frage) werden 15 Fragen gestellt (1A bis 15A), wenn die Antwort der Frage 1 "Ja" ist, 1B bis 15B wenn die Frage 1 die Antwort "Nein" enthält.

Wenn Sie die Fragen in eine Gruppe aufnehmen und sie in der Reihenfolge 2A, 2B, 3A, 3B usw. anorden, so werden Sie einen nahezu geradlinigen Fortschrittsbalken erhalten, anstatt die Fragen in der Reihenfolge 2A, 3A, 4A, ..., 2B, 3B, 4B,... zu hinterlegen. In diesem Fall würde der Fortschrittsbalken sofort von 0 auf 50% oder von 50% auf 100% springen, abhängig von der Frage 1.

UND Bedingungen in Multiple-Choice Fragen

Da Multiple-Choice Fragen wie ein einzelner Frageneintrag behandelt werden, können Sie nur ODER-verknüpfte Bedingungen zwischen den vordefinierten Antworten erstellen.

Benötigen Sie UND-verknüpfte Bedingungen zwischen den möglichen Antworten einer Multiple-Choice Frage, so können Sie folgenden Workaround probieren. Da beim Fragetyp "Matrix (Multi Flexible) (Zahlen)" jede Zelle ein separater Frageeintrag ist, können Sie:

  1. eine Frage vom Typ "Matrix (Multi Flexible) (Zahlen)" definieren, die nur eine einzige Antwort enthält (es wird eine Zeile angezeigt) und ein Beschriftungs-Set zuordnen (dies führt dazu, dass die möglichen Multiple-Choice Antworten als Spaltenüberschriften angezeigt werden).
  2. anschließend definieren Sie die Frageattribute, so dass das Ankreuzfeld-Layout verwendet wird

Nun sind Sie in der Lage, Bedingungen auf Basis jedes einzelnen Ankreuzfeldes zu definieren und diese UND zu verknüpfen. Achten Sie darauf, dass die möglichen Antworten nicht Ja oder Nein, sondern 1 oder 0 erzeugen, da dieser Fragetyp numerische Antworten verwendet.

Bedingungen für "Andere" Optionen im Fragetyp "Mehrfachoptionen"

Beim Fragetyp "Mehrfachoptionen" können Sie die Antwort "Andere", die in diesem Fragetyp angeboten wird, als gültige Antwort verwenden, allerdings können Sie keine Bedingungen hierauf definieren. Zum Beispiel: Frage 1 lautet "Welche Farbe bevorzugen Sie?", als Antworten stehen zur Verfügung Blau, Schwarz oder Andere. Wenn der Umfrageteilnehmer die Antwort Blau wählt, so können Sie eine Bedingung hinterlegen. Basierend auf der Antwort Schwarz können Sie eine andere Bedingung definieren. Wenn der Teilnehmer aber "Andere" auswählt und etwas in das Textfeld einträgt, haben Sie KEINE Möglichkeit, eine Bedingung darauf zu setzen. LimeSurvey begreift es nicht, wenn der Teilnehmer die Option "Andere" auswählt. Dies ist KEIN Fehler, sondern eine existierende Einschränkung.

Die Antwort "Andere" wird in keinem realen Datenfeld hinterlegt, so dass sie auch nicht ausgewertet werden kann. Die einzige Möglichkeit besteht darin zu prüfen, ob der Benutzer etwas in das Textfeld eingegeben hat, oder ob es leer ist.

Wie dem auch sei: aufgrund der Art und Weise, wie Multiple Choice Fragen verarbeitet werden, wurde eine Überprüfung des Textfeldes "Andere" nie für die Typen "M" und "P" implementiert.

Als Workaround verwenden Sie einfach nicht die Option "Andere" bei diesem Fragetyp. Ergänzen Sie stattdessen eine explizite Antwort mit dem Namen "Andere" und fügen Sie ein weiteres kurzes Textfeld hinzu, das angezeigt wird, sobald "Andere" ausgewählt ist.

Wie kann man Klammern in logischen Ausdrücken verwenden?

Dies ist nicht möglich

Wenn Sie eine Bedingung erzeugen möchten, wie

 (bedingung1 ODER bedingung2) UND (bedingung3 ODER bedingung4)

so müssen Sie dies folgendermaßen umsetzen:

 (bedingung1 UND bedingung3) ODER

 (bedingung1 UND bedingung4) ODER

 (bedingung2 UND bedingung3) ODER

 (bedingung2 UND bedingung4) ODER