0 votes
in SoSci Survey (dt.) by s277872 (145 points)

Hallo in die Runde,

nach längerem Abwägen möchte ich die Regel erstellen, dass der Fragebogenteil zur Ergebung demografischer Daten zu 50% und die beiden anderen Teile des Fragebogens zu jeweils 80% ausgefüllt sein müssen, um zur nächsten Seite gelangen zu können.

In „Fragebogen zusammenstellen“ bin ich auf „Einstellungen“ gegangen und habe unten bei Grenzwert für Fortsetzung 80% eingetragen. Im späteren Testdurchlauf konnten die nächste Seiten allerdings auch ohne Bearbeitung laufen werden.

Welche Einstellungen sind hier vorzunehmen. Im Forum hatte ich bisher leider keine Antwort finden können.

Besten Dank im Voraus!

1 Answer

0 votes
by SoSci Survey (306k points)

Diese Einstellung hat Einfluss darauf, was passiert, wenn eine Person via Zugriffscode oder personalisiertem Link auf den Fragebogen zugreift. Je nach fehlenden Antworten wird das Interview dann entweder dort fortgesetzt, wo der Fragebogen verlassen wurde, oder er startet nochmal von vorne. Das richtet sich an Personen, die den Fragebogen "erstmal ansehen" möchten.

Eine automatisierte Prüfung, welcher Anteil von Fragen in einem Teil des Fragebogens beantwortet wurde, gibt es nicht. Aber Sie können mittels PHP-Code einen entsprechenden Filter bauen, z.B.

$items = array_merge(
    ['AB01', 'AB02'],
    getItems('SK01', 'all')
);
$overall = count($items);
$missing = 0;
foreach ($items as $itemID) {
  if (value($itemID) < 0) {
    $missing++;
  }
}
$anteil = $missing / $overall;
if ($anteil > 0.7) {
  text('TX01');
  buttonHide();
}
by s277872 (145 points)
Vielen Dank für die Antwort.
Ich habe den Code unter: Fragebogen zusammenstellen -> Fragebogen -> jeweils Seite 02 und Seite 03 im PHP-Fenster wie folgt eingegeben:

$items = array_merge(
    [‚ROCI, 'KSNA'],
    getItems( 'all')
);
$overall = count($items);
$missing = 0;
foreach ($items as $itemID) {
  if (value($itemID) < 0) {
    $missing++;
  }
}
$anteil = $missing / $overall;
if ($anteil > 0.7) {
  text('TX01');
  buttonHide();
}

ROCI: Kennung der Seite 04, auf dem der Fragebogen mit der Kennung RO01 ist.
KSNA: Kennung der Seite 05, auf dem der Fragebogen mit der Kennung KS01 ist.
TX01: Ein erstellte Textbaustein, der auf die Grenze von X% hinweist.

An der Stelle möchte ich noch erwähnen, dass die Seiten 03 und 04 per Zufallsgenerator rotieren.

Hierzu kam immer wieder die Warnung:
Warnung: Die Funktion buttonHide() ist nicht zur Verwendung im Fragebogen freigegeben.
Warnung: Die Funktion text() ist nicht zur Verwendung im Fragebogen freigegeben.


Was ist hier zu tun?
by SoSci Survey (306k points)
Er scheint so, dass Sie das nicht in einem Feld "PHP-Code" eingegeben haben, sondern unten bei "Verarbeitung der Antworten mittels PHP (Funktion im Test)". Nehmen Sie es dort bitte raus, und verwenden Sie ein Element "PHP-Code".

Abgesehen davon müssen in der Definiton von $items zu Beginn anstatt der Seitennamen die Kennungen der Variablen eingetragen werden, die Sie für die Berechnung der fehlenden Antworten in Befracht ziehen möchten.
by s277872 (145 points)
Vielen Dank für Ihre Rückmeldung. Über Fragebogen zusammenstellen -> Fragebogen -> habe ich unter den Fragebogen-Element ein PHP-Fenster erstellt und folgenden Code eingegeben.
Er liegt nicht in "Verarbeitung der Antworten mittels PHP (Funktion im Test)".

$items = array_merge(
    ['Integrating_1', 'Integrating_2', 'Integrating_3', 'Integrating_4', 'Integrating_5', 'Integrating_6', 'Integrating_7',
    'Avoiding_1', 'Avoiding_2', 'Avoiding_3', 'Avoiding_4', 'Avoiding_5', 'Avoiding_6',
    'Dominating_1', 'Dominating_2', 'Dominating_3', 'Dominating_4', 'Dominating_5',
    'Obliging_1', 'Obliging_2', 'Obliging_3', 'Obliging_4', 'Obliging_5',
    'Compromising_1', 'Compromising_2', 'Compromising_3', 'Compromising_4'],
getItems('all')
);
$overall = count($items);
$missing = 0;
foreach ($items as $itemID) {
if (value($itemID) < 0) {
$missing++;
}
}
$anteil = $missing / $overall;
if ($anteil > 0.7) {
text('TX01');
buttonHide();
}

In der Vorschau erscheinen unten auf der Seite orange-markierte Fenster für alle Variablen:
„Die Variable "..." wurde im Laufe dieses Interviews auf keiner vorhergehenden Seite abgefragt. Daher kann die Funktion value() keinen Antwort-Wert ermitteln.“

Der 'TX01' wird ebenfalls unten angezeigt.

Ich erkenne leider den Fehler noch nicht
by SoSci Survey (306k points)
Die Funktion getItems() brauchen Sie nur, wenn Sie mehrere Items einer Frage (z.B. Skala) auf einmal einbinden möchten. Sonst nicht.

Der Code kann nur die Items prüfen, die bereits auf vorhergehenden Seiten beantwortet wurden. Sie wollten ja unterschiedliche Blöcke separat prüfen. Fügen sie den Code jeweils auf der Seite hinter dem jeweiligen Block ein, und tragen Sie jeweils auch nur die Variablen ein, die Sie in dem Block bereits abgefragt haben.

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

...