0 votes
ago in SoSci Survey (dt.) by s306625 (110 points)
edited ago by s306625

Ich habe eine Mehrfachauswahl-Matrix (AK10), die ihre Items aus einer vorherigen Frage anhand des folgenden Codes übernimmt:

$itemsAK=getItems('AK01','==',2);
question ('AK10',$itemsAK);

Die Variablen der Mehrfachauswahl-Matrix sind dementsprechend nach dem Schema AK10(Nummer Item)(Nummer Antwortoption) aufgebaut.

Nun möchte ich aus der Mehrfachauswahl-Matrix nur die Items in eine Folgefrage (AK11) übernehmen, für die die Antwortoption 7 (egal ob einzeln oder mit anderen Antwortoptionen zusammen) ausgewählt wurde. Leider bin ich bisher trotz aller Recherche und Versuche daran gescheitert. Mit getItems lässt sich bei einer Mehrfachauswahl ja nicht arbeiten und die Prüfung der einzelnen Variablen AK10_(Nummer Item)_7 auf den Wert 2 als ausgewählt hat auch nicht funktioniert.

Wie muss der Code für diese Item-Übernahme aussehen?

Vielen Dank schon mal für die Hilfe!

1 Answer

0 votes
ago by SoSci Survey (330k points)

Ihr Code würde, wenn ich mich nicht täusche, im Moment jene Items heraussuchen, bei denen genau zwei Optionen ausgewählt wurden.

Wenn Sie spezifisch die Option 7 heraussuchen möchten, dann brauchen Sie den etwas längeren Code mit FOR-Schleife aus der Anleitung.

$itemsAK = [];
foreach (getItems('AK10', 'all') as $itemID) {
  $varID = id('AK10', $itemID).'_7';  // Variable zur Option 7
  if (value($varID) == 2) {
    $itemsAK[] = $itemID;
  }
}
question ('AK10',$itemsAK);
ago by s306625 (110 points)
Vielen Dank für die Antwort!
In der letzten Zeile müsste es sicher
                question ('AK11',$itemsAK);
heißen, da die Items aus AK10 in die Frage AK11 übernommen werden sollen.
Wenn ich es mit dem vorgeschlagenen Code und angepasster letzter Zeile versuche, kommt allerdings folgende Fehlermeldung:
"Die Variable AK10_01_CN_7 gibt es in diesem Projekt nicht (siehe Variablenübersicht). Daher kann kein Antwort-Wert dafür ermittelt werden." für alle Item-Nummern.

Die Variablenübersicht sieht so aus:
AK10_01_CN Anzahl ausgewählter Optionen oder Code für Ausweichoption (falls < 0) für: Item 1
AK10_02_CN Anzahl ausgewählter Optionen oder Code für Ausweichoption (falls < 0) für: Item 2
AK10_03_CN Anzahl ausgewählter Optionen oder Code für Ausweichoption (falls < 0) für: Item 3
0 = nicht beantwortet
-1 = nichts davon trifft zu

AK10_01_1 Item 1/Option 1
AK10_01_2 Item 1/Option 2
AK10_01_3 Item 1/Option 3
AK10_01_4 Item 1/Option 4
AK10_01_5 Item 1/Option 5
AK10_01_6 Item 1/Option 6
AK10_01_7 Item 1/Option 7
AK10_02_1 Item 2/Option 1
AK10_02_2 Item 2/Option 2
AK10_02_3 Item 2/Option 3
AK10_02_4 Item 2/Option 4
AK10_02_5 Item 2/Option 5
AK10_02_6 Item 2/Option 6
AK10_02_7 Item 2/Option 7
AK10_03_1 Item 3/Option 1
AK10_03_2 Item 3/Option 2
AK10_03_3 Item 3/Option 3
AK10_03_4 Item 3/Option 4
AK10_03_5 Item 3/Option 5
AK10_03_6 Item 3/Option 6
AK10_03_7 Item 3/Option 7
1 = nicht gewählt
2 = ausgewählt
ago by SoSci Survey (330k points)
Ach ja ... id() und die Mehfachauswahlmatrix funktionieren noch nicht so gut zusammen. Versuchen Sie es bitte hiermit:

$itemsAK = [];
foreach (getItems('AK10', 'all') as $itemID) {
  $varID = 'AK10_0'.$itemID.'_7';  // Variable zur Option 7
  if (value($varID) == 2) {
    $itemsAK[] = $itemID;
  }
}
question('AK11', $itemsAK);
ago by s306625 (110 points)
Jetzt funktioniert es, vielen Dank für die Hilfe!

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

...