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

Hallo,

ich habe eine Frage bzgl. der zusätzlichen Filteroptionen, die man verwenden muss, wenn man sicherstellen will, dass alle Personen, die zu t1 teilgenommen haben, auch zu t3 eine Einladung erhalten unabhängig davon, ob sie zu t2 teilnahmen.
Gerne hätte ich einen Gesamtbogen, um am Ende pro Person eine Datenzeile zu haben.

bisheriger Code auf der Unterbrecherseite nach t1:

if (!isset($timepart1)) {
$timepart1 = time();
registerVariable('timepart1');

// Einladung mit der Serienmail zu t2:
mailResume(false, 2, 1520946000);
}

// Prüfen wie viel Zeit seit erstem Aufruf vergangen ist
if (time() < 1520946000) {
// Unterbrecherseite anzeigen falls noch nicht 14. Mai 7:30 Uhr
option('resume', true); // Kein Hinweis auf Fortsetzung
option('nextbutton', false); // Weiter-Knopf ausblenden
} else {
// Fortsetzung auf nächster Seite falls nach 14. Mai 7:30 Uhr
goToPage('next');
}

Beste Grüße und vielen Dank im Voraus.

in SoSci Survey (dt.) by s091010 (110 points)
edited by SoSci Survey

1 Answer

0 votes

Die Einladung ist kein Problem - dafür verwenden Sie den Befehl mailResume() einfach zweimal statt nur einmal.

Schwieriger ist es, die Teilnehmer, die den mittleren Fragebogen-Teil nicht ausgefüllt haben, zum dritten Teil zu schicken. Dafür müssten Sie noch einen Filter einbauen, der sie nicht zur nächsten Seite schickt, sondern gleich zu Teil 3:

// Prüfen wie viel Zeit seit erstem Aufruf vergangen ist
if (time() < 1520946000) {
  // Unterbrecherseite anzeigen falls noch nicht 14. Mai 7:30 Uhr
  option('resume', true); // Kein Hinweis auf Fortsetzung
  option('nextbutton', false); // Weiter-Knopf ausblenden
} elseif (time() < 1520950000) {
  // Fortsetzung auf nächster Seite falls nach 14. Mai 7:30 Uhr
  goToPage('next');
} else {
  goToPage('teil3');
}

Im zweiten IF würden Sie statt 1520950000 den Zeitstempel eintragen, wenn die Einladung zu Teil 3 verschickt wird.

Kleiner Haken: Sollte jemand bei Teil 2 den Fragebogen anklicken, eine Seite beantworten und dann abbrechen, dann kommt er mit der Einladung zu Teil 3 nicht in den dritten Teil, sondern setzt in Teil 2 an der Abbruchstelle fort. Das kommt recht selten vor - aber um es sicher zu umgehen, müsste ein IF-Filter auf alle Seiten von Teil 2. Daher ist die hübsche Lösung mit Unterbrecherseite für mehrwellige Erhebungen auch weniger praktisch als für zweiweillige Erhebungen.

Wichtig: Testen Sie das Procedere vorab auf jeden Fall einmal selbst. Etwa mit Zeitstempeln, die nur 20 Min. statt X Tage auseinander liegen.

by SoSci Survey (96.6k points)
Danke für die Antwort.
...