Hallo Zusammen,
ich suche eine Möglichkeit, eine Variable auszuwählen (und dann als Filter zu nutzen), die auf einer Fragebogenseite im Vergleich zu anderen Variablen den höchsten Wert erreicht hat. Im Forum habe ich folgenden Code gefunden, der mir aus einer Skala das Item mit dem grössten Wert ausgibt. Ich möchte aber die Variable mit dem grössten Wert.
$values = valueList('IA01');
$max = max($values);
if ($max >= 5) {
$items = getItems('IA01', 'is', $max);
} else {
goToPage('MNPI');
}
Quelle: "Aus gleichwertigen Items per Zufall auswählen"
Konkretes Vorhaben:
Auf Fragebogenseite X werden verschiedene Objekte präsentiert und zu jedem Objekt wird eine Einstellung abgefragt. Pro Objekt eine Variable (bspw. 'S302_01', 'S303_01', 'S304_01'). Das Objekt, zu dem die positivste Einstellung abgegeben wurde, soll auf einer späteren Fragebogenseite angezeigt werden. Für jedes Objekt gibt es eine Fragebogenseite, d.h. in Abhängigkeit von den Angaben auf Seite X soll mit goToPage auf die entsprechende Seite gefiltert werden.
B: Wenn S302_01 den grössten Wert hat, soll auf die Fragebogenseite Page302 gefiltert werden.
Ich vermute, ich könnte das auch mit if-Bedingungen angehen (verkürzt etwa: Wenn S302_01 grösser als S303_01 und S304_01 dann goToPage XY). Da es aber viele Variablen sind (nicht nur drei wie im Bsp.), wäre eine Funktion, die mir den Maximalwert ausgibt (präzisiere: die Variable mit dem grössten Wert), sicher effizienter. Zumal es dann noch noch zusätzliche Regeln/Bedingungen geben muss, für den Fall, dass zwei Variablen den gleichen Wert haben etc.
Ich danke sehr für jede Hilfe!
Liebe Grüsse, Anne