In Ergänzung zum oben Vorgehen (nutzen der Statistik um die geringste Anzahl an Antworten zu ermitteln), würde ich gern wissen, wie es gehen kann, dass:
- auch die Statistik genutzt wird (auch zählen der Antworten)
- aber wenn eine bestimmte Anzahl an Antworten noch NICHT erfüllt ist aus sechs Optionen zufällig eine ausgewählt wird.
Hier mein Versuch:
// Definition für alle die bei Frage A017 item 7 ausgewählt haben
{
if(value('A017') == 7);
{
// Nutzen der Statistik (hier nicht aufgeführt) um den Fall zu definieren, dass wenn für eine der 6 Fälle die Quote 4 und mehr erreicht ist, dann soll auf die nächste Seite gesprungen werden (da wird dann die andere Variante durchgespielt mit dem Sortieren nach der geringsten Häufigkeit)
if (($SNBUKa11 > 3)
or ($LNBUKa11 > 3)
or ($SCRUKa11 > 3)
or ($LCRUKa11 > 3)
or ($SPRUKa11 > 3)
or ($LPRUKa11 > 3))
{
goToPage('007');
// wenn noch keine 4 Antworten da sind, dann soll eine Zufallsziehung aus einer der 6 Optionen durchgeführt werden
} else {
$bucketsUK = array(
1 => $SNBUKa11,
2 => $LNBUKa11,
3 => $SCRUKa11,
4 => $LCRUKa11,
5 => $SPRUKa11,
6 => $LPRUKa11,);
shuffle($bucketsUK);
$bucketsUK = $bucketsUK[0];
put('B046_01', $bucketsUK);
registerVariable('B046_01');
}
// hier will ich eigentlich erreichen, dass er das erste Element zieht, aber ich glaube hier ist was falsch, denn im debug modus zeigt er folgendes an: Debug information for 'B046_01': 'B046_01' = B046_01 (string) value('B046_01') = 0
// Und mit value = 0 kann er nicht weiter arbeiten;
// Das ganze soll für verschiedene Varianten funktionieren. Ich hab den Anschlussteil versucht mit ELSE zu verknüpfen, aber da kriege ich eine Fehlermeldung; Ich will ja dass er nur für den Fall A017 = 7 ODER A017 = 8 ODER etc. dann die jeweiligen Berechnungen und Schritte durchgeführt werden;
// Definition für alle die bei Frage A017 item 8 ausgewählt haben etc etc..
}
if (value('A017') == 8);
{
if (($SNBUKa12 > 3)
or ($LNBUKa12 > 3)
or ($SCRUKa12 > 3)
or ($LCRUKa12 > 3)
or ($SPRUKa12 > 3)
or ($LPRUKa12 > 3)) {
goToPage('007');
} else {
$bucketsUK = array(
1 => $SNBUKa12,
2 => $LNBUKa12,
3 => $SCRUKa12,
4 => $LCRUKa12,
5 => $SPRUKa12,
6 => $LPRUKa12,);
shuffle($bucketsUK);
$bucketsUK = $bucketsUK[0];
put('B046_01', $bucketsUK);
registerVariable('B046_01');
}