0 votes
in SoSci Survey (dt.) by s146674 (360 points)

Hallo zusammen,

ich habe diese Folge von Fragen mit denselben Items:

1) Tn sollen angeben, welche Erfahrungen sie gemacht haben (Mehrfachauswahl)

2) die bei (1) angekreuzten Erfahrungen erscheinen nun noch einmal, wobei die Tn nun angeben sollen, ob sie diese Erfahrungen innerhalb oder außerhalb Deutschlands gemacht haben (kombinierte Mehrfachauswahl)

3) zu denjenigen Erfahrungen, die innerhlab Deutschlands gemacht wurden, wird nun gefragt, zu welchen die Tn tatsächlich Fragen beantworten wollen. (Mehrfachauswahl)

Frage 2 funktioniert gut.

Bei Frage 3 habe ich mit folgendem PHP Code (Ausschnitt) gearbeitet:

if (value('ER02_01_1') == 2) { question('ER06', '1'); }

if (value('ER02_02_1') == 2) { question('ER06', '2'); }

if (value('ER02_03_1') == 2) { question('ER06', '3'); }

Dabei gibt es aber 2 Probleme:

Es kommen Fehlermeldungen für alle diejenigen Items, die in Schritt 2 schon gar nicht mehr abgefragt wurden, weil für sie kein Wert vorliegt. Das ist logisch und für mich nicht weiter schlimm (oder?). Wie kann ich die Fehlermeldung wegbekommen?

Außerdem werden die Items, die zum Schluss noch angezeigt werden sollen, nicht innerhalb einer Frage angezeigt, sondern in separaten Fragen untereinander. Die Ausweichoption wird bei jedem Item neu angezeigt. Wie kann ich eine Darstellung erzeugen, in der alle Items in einer Frage und die Ausweichoption nur einmal angezeigt werden ?

Vielen Dank und viele Grüße!

1 Answer

0 votes
by SoSci Survey (305k points)

Es kommen Fehlermeldungen für alle diejenigen Items, die in Schritt 2 schon gar nicht mehr abgefragt wurden, weil für sie kein Wert vorliegt

Die Fehlermeldung sehen die Teilnehmer:innen nicht, Sie können diese also ignorieren. Alternativ setzen Sie als zweiten Parameter in value() noch ein `code:ifany' , also z.B.

value('ER02_01_1', 'code:ifany')

Ich bin auch nicht 100%ig sicher, ob der Variablename stimmt, prüfen Sie diesen bitte nochmal in der Variablen-Übersicht.

Außerdem werden die Items, die zum Schluss noch angezeigt werden sollen, nicht innerhalb einer Frage angezeigt, sondern in separaten Fragen untereinander.

Das liegt daran, dass Sie question() mehrfach aufrufen. Die einfache Lösung wäre, dass Sie das nicht mittels PHP-Code programmieren, sondern einfach als Filter direkt in der Mehrfachauswahl-Frage zusammenklicken.

Die minimal anspruchsvollere Lösung besteht darin, dass Sie ein Array erstellen, welche Optionen gezeigt werden sollen:

$optionen = [];
if (value('ER02_01_1') == 2) { $optionen[] = 1; }
if (value('ER02_02_1') == 2) { $optionen[] = 2; }
if (value('ER02_03_1') == 2) { $optionen[] = 3; }
question('ER06', $optionen);

Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

...