0 votes
in SoSci Survey (dt.) by s105969 (140 points)

Guten Abend!
Ich möchte einen Filter an dem Fragetyp Skala (Zwischenwerte beschriftet) verwenden. Das ist die Variablenübersicht und der verwendete PHP-Filter, der einige Seiten später greifen soll.

Der Fragebogen soll demnach beendet werden in dem Fall, dass ein paar Fragen früher bei der Frage "Zielintention" Option 1,2,3 oder 4 angekreuzt wurden. Das Problem ist, dass ich schon vorher eine Filterfrage habe, wodurch einige die Frage "Zielintention" überspringen. Der Filter war eigentlich so gedacht, dass er bei den Personen, welche die Frage "Zielintention" beantwortet haben und auf die der Filter zutrifft, zum Ende geleitet werden und die Personen, welche die Frage "Zielintention" durch den vorherigen Filter nicht präsentiert bekommen haben, den Fragebogen normal weiter ausfüllen - daher der Filter nicht greift.
Wenn ich den Fragebogen so durchführe, dass ich die Frage "Zielintention" präsentiert bekomme, funktioniert der jetzige Filter super. Führe ich den Fragebogen allerdings so durch, dass durch den vorherigen FIlter die Frage "Zielintention" nicht angezeigt wird, fehlt dem Programm die Antwort auf diese Frage und mir erscheint die Warnung: "The variable S101_01 has not been asked on a previous page during this interview. Therefore value() cannot determine any answer, yet.". Im Debug-Modus wird mir folgendes angezeigt:

Gibt es etwas, was ich anders machen kann, damit der Filter nur auf die Personen, welche die Frage "Zielintention" auch tatsächlich ausgefüllt haben, angewandt wird? Ansonsten kann ich trotz der Warnungen ja den Fragebogen weiter ausfüllen, d.h. der Filter greift nicht, genau wie ich es wollte. Dies ist ja auch im letzten Punkt des Debug-Modus ersichtlich (Create question S204). Ist es möglich, dass es auch so funktioniert? Werden die Warnungen denn beim Durchführen des endgültigen Fragebogens auch angezeigt?

1 Answer

0 votes
by SoSci Survey (302k points)

mir erscheint die Warnung: "The variable S101_01 has not been asked on a previous page during this interview

Zunächst einmal ist das nur eine Warnung ... damit Sie wissen, weshalb der Filter nicht greift. Sie wissen, weshalb die Warnung erscheint und können diesen ignorieren. Die Teilnehmer werden von der Warnung nichts sehen.

Wenn Sie aus ästhetischen Gründen nicht möchten, dass die Warnung erscheint, können Sie die erste Filterfrage in den Filter mit aufnehmen:

if (
  (value('XX01') == 1) &&
  (
    (value('A101_01') == 1) ||
    (value('A101_01') == 2) ||
    (value('A101_01') == 3) ||
    (value('A101_01') == 4)
  )
) {
  goToPage('end');
}

In dem Fall wird der zweit Teil des Filters nur aktiv, wenn XX01 (exemplarisch für die erste Filterfrage) den Wert 1 hat.

by s105969 (140 points)
Super, Dankeschön für die Antwort :) das hat mir sehr weitergeholfen!

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

...