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

0 votes

Liebes Forum, liebes SoSci-Survey-Team,

ich habe einen Fragebogen mit einigen Unterfragebögen erstellt. Über goToQuestionnaire() habe ich auf Unterfragebögen verwiesen. Allerdings funktioniert der Rückverweis auf den Ausgangsfragebogen (parent) via goToParent() nicht, stattdessen wird einfach die nächste Seite angezeigt. Dies gilt sowohl für: goToParent('leave') als auch für goToParent('go').

Mögliche Ursache:
Im Datensatz des Teilfragebogens über goToQuestionnaire() zwar unter SERIAL die CASE-Nr. des Elternfragebogens gespeichert, nicht aber unter der REF. (Dies war in der Vergangenheit (April 2021) noch so.)
Vielleicht versucht also GoToParent anhand der REF zurück auf den Ausgangsfragebogen zu leiten, findet REF aber nicht.

Unten findet sich der Code-Auszug

Über Hinweise oder Tipps zur Lösung wäre ich sehr dankbar!

Besten Dank und beste Grüße vorab!


PHP-Code:
// Ausgangsfragebogen (Urne + Verweise)
urnDraw('UR01', 'UR01', 'end');
$zahl = value('UR01_01');
if ($zahl== 1) {
goToQuestionnaire('dt1G1');
} elseif ($zahl== 3) {
goToQuestionnaire('dt1G3');
} elseif ($zahl== 4) {
goToQuestionnaire('dt1G4');
} elseif ($zahl== 5) {
goToQuestionnaire('dt1G5');
}

// Teilfragebogen:
goToParent('leave');

in SoSci Survey (dt.) by s178714 (155 points)
Was zeigt denn die Debug-Information an?

Ich könnte mir vorstellen, dass man an einer Stelle im übergeordneten Fragebogen herauskommt, die den Befragten gleich wieder in einen neuen Unterfragebogen schickt.

1 Answer

0 votes

Die Debug-Informationen verschwinden leider beim Wechsel von Ausgangsfragebogen zu Teilfragebogen, weshalb ich hierzu leider nichts sagen kann.

Den Tipp mit dem direkten Rückverweis kann ich daher nicht völlig ausschließen.
Allerdings enthält der Fragebogen nur drei Seiten (Seite 1 Urne mit Teilfragebögen und Basisbrowserdaten, Seite 2 Hinweis, Seite 3: Ende).

Die gleichmäßige Verteilung auf die Teilfragebögen habe ich über die Urne im Ausgangsfragebogen mit der Option 'end' gelöst. Wenn die Teilfragebögen nicht wieder im Ausgangsfragebogen landen, gilt die Urne nicht als abgeschlossen und kann entsprechend nicht balancieren, daher der Rückverweis auf den Hauptfragebogen.

Ausgangsfragebogen: Urne --> Teilfragebögen --> Ausgangsfragebogen: Hinweis --> Ausgangsfragebogen: Ende.

by s178714 (155 points)
Könnten Sie das Befragungsprojekt bitte einmal als XML-Datei exportieren und mit an info@soscisurvey.de senden bzw. unter https://s2survey.net/transfer hochladen, falls es sensible Daten enthält? Dann kann ich mir das einmal im Detail ansehen.
Das ist sehr nett, vielen Dank. Bereits geschehen.
Hatten Sie schon Gelegenheit, sich das Problem anzusehen? Alternativ würde ich versuchen, mittels multiLevelDown() einen workaround zu nutzen. Da es sich, aber nur um jeweils einen Teilfragebogen handelt, erscheint mir das nicht die eleganteste Lösung.
Ich denke, dass ich mir das am Samstag mal gründlich ansehen kann. Das ist wahrscheinlich nichts, was sich in 10 Minuten aufklären lässt... es würde mich übrigens verwundern, wenn Sie bei multiLevelDown() ein anderes Ergebnis erzielen würden.
Vielen Dank für ihre Rückmeldung. Über MultiLevelDown() ließ sich das Hauptproblem der fehlenden Rückübermittlung von Teilfragebogen zu Hauptfragebogen lösen. Zwar wurde CASE des Hauptfragebogens nicht weitergegeben als REF an den Teilfragebogen weitergegeben. Allerdings ließ sich das über put() + multiLevelData() im Teilfragebogen lösen. Auf diese Weise können Haupt- und Teilfragebögen eindeutig identifiziert und einander zugewiesen werden.
Danke für die Information. Dann bin ich nun erst einmal sehr verwundert - habe aber dafür auch gleich einen Ansatzpunkt für die Fehlersuche.
Ich habe das Projekt importiert und den Fragebogen t1_desktop gestartet. Daraufhin wurde eine Zahl (1) aus der Urne gezogen und das Interview wechselte in den Fragebogen dt1G1, so wie ich es aufgrund des PHP-Codes erwarten würde.

Um den Timer nicht abwarten zu müssen, sprang ich dann über die Debug-Leiste auf Seite 15. Von dort habe ich bis zur Seite 17 geklickt, wo das goToParent() steht. Daraufhin zeigte mir die Debug-Information:

> Erstelle Seite 2 in Fragebogen t1_desktop

Und auf dem Bildschirm bekam ich:

> Wichtiger Hinweis:
> In ca. 2 Wochen ist im Rahmen dieser Studie eine kurze Folgebefragung mit ansprechender Entlohnung geplant, ...

Danach konnte ich die Befragung korrekt beenden.

Anschließend habe ich den Fragebogen t1_desktop nochmal über den regulären Interview-Link aufgerufen. Aber dort habe ich den Aufmerksamkeitstest nicht bestanden :)

Testweise habe ich mal ein goToPage() in den Unterfragebogen eingesetzt, damit ich nicht alles durchklicken muss. Auch dann wieder die Meldung:

> In ca. 2 Wochen ist im Rahmen dieser Studie eine kurze Folgebefragung mit ansprechender Entlohnung geplant

Kurzum: Ich konnte das Problem bisher nicht replizieren. Trott das Problem bei Ihnen weiterhin auf, wenn Sie die Seiten 2 bis 16 im Unterfragebogen überspringen? Nur zur Fehlersuche, versteht sich...
...