Ich habe jetzt alternativ diesen Code:
PHP Code Seite 3:
// Quotenstopp insgesamt
if (statistic('count', 'SD22_01') > 125) { redirect('
https://gateway.gapfish.com/routings/%reference%/finish/quota_full'); }
$quota = [
'3-1' => 1, '3-2' => 1, // 7 Frauen und 8 Männer für die Altersgruppe 1
'5-1' => 13, '5-2' => 13, // 13 Personen pro Geschlecht für die Altersgruppe 2
'7-1' => 13, '7-2' => 14, // 13 Frauen und 14 Männer für die Altersgruppe 3
'9-1' => 13, '9-2' => 14, // 13 Frauen und 14 Männer für die Altersgruppe 4
'11-1' => 15, '11-2' => 15 // 15 Personen pro Geschlecht für die Altersgruppe 5
];
// Auslesen Geschlecht & Alter
$gender = value('SD01');
$ageGroup = value('SD03');
// Definition einer Variable mit Altersgruppe und Geschlecht
// Aus 3 und 2 wird hier 3-2
$demGroup = $ageGroup.'-'.$gender;
// Abruf der vorliegenden Fälle für diese Merkmalsausprägung
$cases = statistic('count', 'SD23_01', $demGroup);
// Auslesen der Quote für die demografische Gruppe
$maxPerGroup = $quota[$demGroup];
// Quotenstopp
if ($cases >= $maxPerGroup) {
redirect('
https://gateway.gapfish.com/routings/%reference%/finish/quota_full');
}
Hier kommt die Warnung:
Warnung (Seite 3)
Die Variable SD01 wurde im Laufe dieses Interviews auf keiner vorhergehenden Seite abgefragt. Daher kann die Funktion value() keinen Antwort-Wert ermitteln.
Warnung (Seite 3)
Die Variable SD03 wurde im Laufe dieses Interviews auf keiner vorhergehenden Seite abgefragt. Daher kann die Funktion value() keinen Antwort-Wert ermitteln.
Fehler im Fragebogen (Seite 3)
Im PHP-Code trat ein Fehler auf.
Fehler im Fragebogen: Undefined array key "-"
Zeile: 30
PHP-Code
027 $cases = statistic('count', 'SD23_01', $demGroup);
028
029
030 $maxPerGroup = $quota[$demGroup];
031
032
033 if ($cases >= $maxPerGroup) {
Und die Debug-Information:
[Information] Interview gestartet (neue Nummer 1437)
[Information] Der Fragebogen ExpV1 im Projekt forschungsprojekt09102023 wird verwendet
[Verarbeitung] Erstelle Seite 3 in Fragebogen ExpV1
[Information] value("SD01") = ???
[Information] value("SD03") = ???
[Inhalt] Zeige Text Aufg
PHP-Code Vorletzte Seite:
// Auslesen Geschlecht & Alter
$gender = value('SD01');
$ageGrp = value('SD02');
// Kennung für die demografische Zelle erstellen
$demGroup = $gender.'-'.$ageGrp;
// Speichern vollständiger Fragebogen in der internen Variable BB24_01 für Quotenstopp insgesamt
put('SD22_01');
// Speichern der Gruppenzugehörigkeit in der internen Variable SD20_01
put('SD23_01', $demGroup);
// Speeder Screenout
if (caseTime('begin') < 200) {
redirect('
https://gateway.gapfish.com/routings/%reference%/finish/screenout'); }
// Complete-Redirect
redirect('
https://gateway.gapfish.com/routings/%reference%/finish/completed');