0 votes
ago in SoSci Survey (dt.) by s190091 (270 points)

Liebes SoSci-Team,

ich habe ein etwas kurioses Problem mit der Item-Sortierung bei einer Mehrfachauswahl:

Im Fragebogen gibt es zwei aufeinanderfolgende Fragen mit größtenteils identischen Items. Bei jeder der beiden Fragen gibt es folgende beiden Items:

  • Mü... [Rest des Wortes hier aus Datenschutzgründen abgeschnitten]
  • My... [Rest des Wortes hier aus Datenschutzgründen abgeschnitten]

Ich habe bei beiden Fragen "Alphabetisch sortieren" ausgewählt. Im Bearbeitungsmodus wird auch jeweils die gleiche Reihenfolge angezeigt - Mü... vor My...

Im fertigen Fragebogen erscheint bei der ersten Frage Mü... vor My..., bei der zweiten Frage ist es jedoch genau umgekehrt.

Haben Sie eine Idee, wo das Problem liegen könnte?

Herzlichen Dank für Ihre Unterstützung und beste Grüße

ago by SoSci Survey (322k points)
Spontan habe ich dazu keine Idee - wir testen das. Haben Sie beim EInbinden der Fragen die Items explizit angegeben, also z.B. einen PHP-Filter verwendet, welcher die Items aus Frage A automatisch nach Frage B übernimmt?

question('AB01', $items);

Oder bestimmte Bereiche definiert, z.B.

question('AB01', '1-10,20-25');
ago by s190091 (270 points)
Guten Tag,

erst mal herzlichen Dank für das superschnelle Feedback!

Die Programmierung hat ein Kollege vor einiger Zeit vorgenommen. Ich vermute, er hat die Ursprungsfrage zunächst in eine andere Kategorie kopiert und dann den Fragetext für die zweite Frage angepasst - die Items wurden also höchstwahrscheinlich schlicht kopiert (Genaueres könnte ich nächste Woche sagen, wenn ich den Kollegen wieder erreiche.)

Auf der Seite mit der zweiten Frage wird folgender PHP-Code verwendet:

______________
$itemliste = getItems('KD01', '==', 1);
$texte = [];
foreach ($itemliste as $itemID) {
  $texte[$itemID] = getItemtext('KD01', $itemID);
}
asort($texte);
$itemliste = array_keys($texte);
question('TD01', $itemliste);

_______________

KD01 ist hierbei die erste Frage, TD01 die zweite.

Hilft Ihnen das weiter oder benötigen Sie weitere Informationen?


Herzlichen Dank für Ihren großartigen Support und beste Grüße

1 Answer

0 votes
ago by SoSci Survey (322k points)

KD01 ist hierbei die erste Frage, TD01 die zweite.

Ich denke, das Problem besteht darin, dass die Items in den Fragen entweder nicht dieselben IDs haben (das wäre generell schlecht, weil der o.g. Code dann nicht korrekt funktionieren würde) oder dass die Items in der ersten Frage nicht alphabetisch sortiert sind.

Es passiert hier nämlich folgendes: Frage 1 word ohne explizite Definition der Items aufgerufen. Hier wird die dynamische Sortierung aktiv.

Dann wird aus der Liste der Items via getItems() (nicht alphabetisch sortiert!) eine Liste der Items erstellt, die in KD01 mit 1 beantwortet wurden. Diese Liste (dann ebenfalls nicht alphabetisch sortiert) wird verbindlich an TD01 übergeben.

TD01 muss sich nun also an die Liste halten, und kann die Items daher nicht dynamisch sortieren.

Die Lösung besteht m.E. darin, dass Sie die beiden fraglichen Items in beiden Fragen tauschen, und die IDs entsprechend anpassen. Tun Sie das aber nicht (!) falls Sie schon Daten erhoben haben bzw. vorhandene Daten aus einer früheren Erhebung vergleichen möchten.

ago by s190091 (270 points)
Wiederum herzlichen Dank für die schnelle Antwort. Ich bin mir allerdings nicht hundertprozentig sicher, ob ich das Problem korrekt verstanden habe.

Bei Frage KD01 lautet z.B. die ID eines Items KD_103; das entsprechende Item bei Frage TD01 trägt die ID TD1_103. Liegt in dieser unterschiedlichen Benennung das Problem?

Die Items in der ersten Frage sind in der Liste nicht alphabetisch sortiert, werden aber lt. Befehl in der Frage alphabetisch sortiert.

Herzlichen Dank und beste Grüße
ago by SoSci Survey (322k points)
Der Fragetyp ist eine Mehrfachauswahl, keine hierarchische Mehrfachauswahl, ist das korrekt?

In dem Fall sollte jedes Item eine numerische ID haben, die Sie z.B. unten in der Frage bei der Itemverwaltung sehen (nicht unter "Variablen", falls Sie dort nachgesehen haben).

Welche IDs haben denn dort Mü* und My*?
ago by s190091 (270 points)
Erneut vielen Dank für die Antwort in Lichtgeschwindigkeit!

Zu Ihren Fragen:
- Ja, es handelt sich in beiden Fällen um den Fragetyp Mehrfachauswahl!
- Bei beiden Fragen wird Mü* die Kennung 33 zugewiesen, My* die Kennung 34 - die Nummern stimmen also bei den jeweiligen Einträgen überein.

Benötigen Sie noch weitere Informationen?

Vielen Dank für Ihre Unterstützung!
ago by SoSci Survey (322k points)
1) Bitte testen Sie einmal, was passiert, wenn Sie die dynamische Sortierung abschalten - in welcher Reihenfolge werden die beiden Optionen dann angezeigt?

2) Bitte ergänzen Sie im PHP-Code folgende debug()-Zeile und berichten Sie, was die Debug-Information anzeigt.

debug($itemliste);
question('TD01', $itemliste);

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

...