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

Mein Vorgehen ist Ihnen ja bekannt oder, da es sich um eine related question handelt, leicht zugänglich.

Ich baue die Erinnerungen ja auch gleich in den Funktions-Fragebogen ein. Nun ist es so, dass wir die 3. Erinnerung falls der Pb den ersten beiden nicht folgt, telefonisch vornehmen möchten. Wenn wir dies per stetiger Inspektion der Status-Leuchten machen müssten, wäre dies auch eher mühsam.

Daher die Idee: dass ich am Schluss noch ein mailResume in den Verwaltungsfragebogen einbaue, bei der nicht die SERIAL des Pb sondern meine eingetragen wäre. Den Revoke-Befehl würde ich auch in den Pb-Fragebogen einbauen aber statt mit false mit meiner SERIAL. So sollte ich ja benachrichtigt werden, falls der Pb den ersten beiden Einladungen nicht gefolgt ist und ansonsten aber nicht benachrichtigt werden.

Zwei Probleme:
1. Ich müsste ja viele Benachrichtigungsmails anlegen, damit durch den Revoke-Befehl, der bei Vollendung des Pb-Fragebogens durch einen Probanden nicht alle Benachrichtigungen an mich (bzgl. anderer Probanden) widerrufen würden.
2. Müsste ich dann aber beim Benachrichtigungs-Schedule-Befehl immer eine andere Serienmail-ID einsetzen, den Fragebogen also dennoch jedesmal vor dem Aufruf leicht modifizieren.

Daher die Frage, ob Sie für diese Problemstellung eine elegantere Lösung hätten?

Danke im Voraus.

in SoSci Survey (dt.) by s082566 (430 points)

1 Answer

0 votes

Dieser Reminder an die Projektleitung selbst ist in der Tat schwierig. Denn SoSci Survey organisiert die Mail-Aussendungen darüber, dass jeder Teilnehmer in der Adressliste jede Serienmail nur einmal erhält. Ist diese Kombination eindeutig, kann man darüber z.B. eben via mailRevoke() eine Aussendung individuell stornieren.


Prinzipiell könnten Sie nun also entweder ganz viele Adresseinträge für sich selbst in der Adressliste eintragen. Der Einfachheit halber z.B. immer mit der gleichen Seriennummer wie der Teilnehmer plus einem Appendix, z.B. ABC123 für den Teilnehmer und ABC123x für Sie. Dann wäre das mit dem mailSchedule() recht einfach.

Oder Sie müssten ganz viele Serienmails anlegen, aber das macht nicht wirklich Spaß :(

Oder Sie würden sich mittels mailResume() oder (besser) mailSend() einen fixen Reminder schicken, wann ein Teilnehmer fertig sein müsste. Aber diesen könnten Sie nicht automatisch stornieren, sondern müssten das überprüfen. Über die "Datenbank für Inhalte" und einen weiteren Verwaltungsfragebogen könnte man die Überprüfung zumindest noch vereinfachen (z.B. nur ein Klick), aber es bleibt der manuelle Schritt.


Meiner Meinung nach wäre die Lösung mit vielen (eigenen) Adresseinträgen die einfachste. Voraussetzung damit es einfach bleibt ist aber, dass Sie schon beim Import der Teilnehmer-Adressen Personenkennungen (SERIALs) mit importieren und für Ihre Spiegel-Einträge dann jeweils dieselbe Kennung plus einem Appendix (z.B. 'x') verwenden. Dann klappt es sowohl mit dem mailSchedule() m Verwaltungsfragebogen ...

$code = value('TX01_01');
mailSchedule($code, 1, 0);
mailSchedule($code, 2, 12345);
mailSchedule($code.'x', 3, 23456);

... wie auch beim mailRevoke() im Interview ....

$code = caseSerial();
mailRevoke($code.'x', 3);
by SoSci Survey (68.1k points)
Ich hab nochmal ein bisschen herumprobiert, um die gestrigen Fehler replizieren zu können.

Hier der Bericht: Den Fehler mit den vorangestellten " konnte ich komischerweise nicht replizieren. Dabei gleich noch die Antwort auf Ihre vorherige Frage: Als sich der Fehler gestern gezeigt hat, waren die beiden SERIALS (Pb und mirror) identisch, abgesehen davon, dass beim mirror " vorangestellt war. Da sich dieser Fehler heute nicht replizieren lässt, kenne ich den genauen Grund nicht. Dennoch kann ich Ihnen weitere allenfalls nützliche Infos geben, durch die Sie vlt. zu einer Idee bzgl. Problemquelle gelangen:

1. An der Gross- & Kleinschreibung scheint es nicht zu liegen. Habe beides nochmal getestet und es klappte beides einwandfrei.

2. Es zeigte sich gestern bei anderen Durchgängen ein anderer Fehler und zwar, dass dem Mirror eine völlig andere SERIAL zugewiesen wurde als dem entsprechenden Pb und dies obwohl ich beim Mirror vor dem Import die SERIAL des Pb hineinkopiert und um ein x erweitert habe. Den Grund hierfür kenne ich jedoch. In unserer Excel-Teilnehmerliste, aus der wir die Import-csv's erstellen sind bei den Pb Spalten für TeamNr. Anrede/Geschlecht etc. dabei. Als ich gestern den Mirror mit dieser Liste importierte, erhielt er einen andere SERIAL als der entsprechende Pb (was ja auch plausibel ist, weil der Mirror keine und somit nicht dieselbe Team-Nr. hat wie der Pb und die SERIAL folglich ja auch nicht mit den gleichen Zeichen enden kann. Also habe ich eine Importliste nur für die Mirrors erstellt, in der nur die Spalte Mail und zusätzlich einige customs (für die VL-Benachrichtigung, wenn Telefon-Erinnerung indiziert ist) drin sind. Mit dieser klappt es einwandfrei.

3. Ich bin gestern wie folgt vorgegangen: Zuerst den Mirror mit derselben Datei importiert wie die Pb (zuerst die Pb, damit Sosci die Dyadenzuordnung per Team-Nr übernimmt und in einem zweiten Durchgang den Mirror mit entsprechend vorgegegebem SERIAL (= SERIAL Pb + x). Beim ersten Mal war das Ergebnis dasjenige mit vorangestellten Gänsefüsschen beim Mirror. Bei weiteren Durchgängen wurde dem Mirror eine völlig andere SERIAL zugewiesen (was wie oben bereits geschildert an den Team-Nr zu liegen scheint). Dann habe ich den Import des Mirrors mit der eigenen Liste (nur Mail und customs) vollzogen und es hat geklappt, dass ihm der von mir zugewiesene SERIAL (SERIAL Pb + x) zugewiesen wurde.

Kurz: Es funktioniert jetzt mit der separaten Importliste für den Mirror alles. Und die Probleme scheinen an den Parametern zu liegen, die bei der Probandenliste mitimportiert werden, für den Mirror aber nicht spezifiziert sind. Mir ist lediglich unklar, weshalb das Ergebnis beim ersten Mal vorangestellte Gänsefüsschen waren und bei den weiteren Durchgängen völlig andere SERIALS.Letzteres könnte ja darauf hinweisen, dass das mit den Gänsefüsschen doch auf einer anderen Problemquelle beruht. Ich weiss aber auch nicht, ob Sie mit diesen Infos diesbezüglich eine Idee haben.

Ich hoffe das hilft allenfalls weiter.

Freundliche Grüsse,

Patrick
Nun ja - die Mischung von SERIAL und Team-ID kann aus naheliegenden Gründen nicht funktionieren... Aber im Prinzip brauchen sie die Team-ID ja auch nicht, weil Sie ja wissen, welcher Code zu welchem Teilnehmer gehört. Die Team-ID ist v.a. dann hilfreich, wenn Sie die Anonymität wahren müssen.

Was die Gänsefüßchen angeht, wäre meine Vermutung, dass beim Import der Datei das Texterkennungszeiten nicht korrekt angegeben war. Das sollte aber eigentlich schon an der Stelle zu erkennen sein, wo man die Spalten den Feldern in der Adressliste zuordnen muss.
Danke für die Antworten.

Ja, das SERIAL und Team-ID nicht zusammen funktionieren können war mir klar. Dass wir die Team-ID grundsätzlich nicht brauchen ebenso. Ich finde es für die Auswertung aber weniger fehleranfällig und allenfalls auch besser programmierbar wenn wir die Team-ID auch mit drin haben. Es lässt sich ja nun aber auch mit zwei getrennten Importlisten problemlos vereinbaren. Was dies betrifft ist also alles gut.

Was das mit den Gänsefüsschen angeht, stimmt Ihre Vermutung.Es lag wirklich daran, dass "kein Texterkennungszeichen" eingestellt war. Und mit dem getrennten Import-File nur für die Spiegeladressen klappt jetzt auch alles einwandfrei. Vielen Dank dafür.

Dennoch verstehe ich das System des Ganzen nicht ganz. Denn wenn ich die SERIALx für die Spiegeladressen in das Excelfile packe, mit dem ich auch die Probandenadressen importiere, schlägt sosci die Codierung westeuropäische Sprachen und "kein Texterkennungszeichen" vor. Dies ist aber komischerweise nur für die Spalte SERIALx ein Problem, weil dort beim Import auf einmal ein " vorangestellt wird, welches im CSV nicht da ist. Daher muss man auf "normales Anführungszeichen" wechseln, damit es klappt. Im Excelfile, mit dem ich nun nur die Spiegeladressen importiere und alle dafür nicht nötigen Spalten entfernt habe, wird die Codierung UTF-8 sowie "kein Texterkennungszeichen" vorgeschlagen und es klappt einwandfrei.

Kurz: 1. Weshalb wird beim ersten Importfile den SERIALx ein " vorangestellt bei allen anderen Einträgen Namen, male, female etc. jedoch nicht?
2. Weshalb bekommen beim zweiten abgespeckten Importfile dieselben SERIALx, die beim ersten ein vorangestelltes " bekommen, kein " vorangestellt?

Es klappt ja nun dank Ihrer super Unterstützung alles einwandfrei, diese Punkte verstehe ich aber dennoch nicht.

Erneut vielen Dank.
Sie können die CSV nochmal in einem Texteditor wie Notepad+ oder SciTE öffnen und prüfen, ob nicht (aus welchen Gründen auch immer) vielleicht doch ein Anführungszeichen eingefügt wurde...

Die ISO-Kodierung (westeuropäische Sprachen) wird wohl deshalb funktionieren, weil keine Umlaute in der Datei vorkommen. Und dann sind UTF-8 und ISO-8895-1 inhaltlich identisch.

Die Team-ID können Sie bekommen, wenn Sie sie beim Import selbst vorgeben. Sie können ja beliebige Zeichenketten als ID beim Import einstellen. Sollte es an Kreativität mangeln, lassen Sie sich von der Seriennummer-Funktion von SoSci Survey welche basteln, die Sie dann nach Excel kopieren. Danach bitte aus den Seriennummer herauslöschen, weil sie sonst bei den Adresseinträgen nicht mehr verwendet werden können.
Alles klar. Vielen Dank nochmal für die ganze Unterstützung. Ich habe den ganzen Ablauf mittlerweile einem technischen Funktionstest unterzogen und alles mal pilotiert. Es klappt alles bestens und einem reibungslosen Ablauf steht nichts mehr im Wege. :)

Mit freundlichen und dankbaren Grüssen,

Patrick Bätschmann
...