Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

Bedingung für eine Fragegruppe setzen, welche sich auf bedingte Gruppen bezieht

  • Gelimed
  • Gelimed's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
8 months 2 days ago - 8 months 2 days ago #246013 by Gelimed
Guten Morgen aus Freiburg im Breisgau!
Ihre LimeSurvey-Version: Version 5.6.31
Eigener Server oder LimeSurvey-Cloud: Über der Versionsangabe rechts unten steht "LimeSurvey Cloud" - scheint aber nur ein Link zu sein...wo finde ich das heraus?
Genutzte Designvorlage: Eigene vom Arbeitgeber
==================
Als erstes möchte ich mich sehr für die viele investierte Freizeit aller Beteiligten bedanken - ihr habt mir schon viel weitergeholfen!
Ich habe das Forum durchforstet und auch die Bedienungsanleitung und das Netz, habe aber leider nix gefunden zu meinem Problem.
Vorab: Ich habe zwar eine Lösung gefunden, aber ich vermute sehr, dass das Ganze viel einfacher geht. Ich nutze Limesurvey erst seit ein paar Wochen...
Das Problem:
Die erste Frage ist eine Dropdown-Liste in der die Anzahl Schulkinder ausgewählt werden.
Dann folgen 7 Fragegruppen, wovon nur so viele angezeigt werden, wie Schulkinder ausgewählt wurden (Fragengruppen "1. Kind" bis "7. Kind")
In jeder dieser identischen Fragegruppen befindet sich eine Matrix-Frage (F) mit einer Teilfrage und zwei Antwortoptionen - "Ja" oder "Nein"
Die folgende Fragengruppe (ID-484) soll nur angezeigt werden, wenn in mindestens einer der 7 identischen Fragegruppen - wovon nur ein variabler Teil angezeigt wird, je nachdem, wieviele Schulkinder ausgewählt wurden - die Teilfrage mit "Nein" beantwortet wurde.
Nachdem ich einiges probiert habe, konnte ich nur die Lösung finden, Fragengruppe 484 auch 7x zu vervielfältigen und in jede einzelne Gruppe eine Bedingung zu setzen, die sich auf jede einzelne der 7 oberen Fragengruppen bezieht ("1. Kind" bis "7. Kind").
Die auf Gruppe 484 folgende Fragengruppe (ID-485) soll analog zu 484 nur angezeigt werden, wenn in den variablen Gruppen "1. Kind" bis "7. Kind" die oben beschriebene Teilfrage mit "Ja" beantwortet wurde - gleiches Problem.
Frage: Gibt es da eine elegantere und schnellere Lösung?
Anhang 1: 754936 = unvollständig, mit einer Lösung die nicht funktioniert - ich konnte nicht verstehen, warum.
Anhang 2: 247221 = meine komplizierte Lösung
Viele Grüße und Danke im Voraus
Gelimed
Last edit: 8 months 2 days ago by Gelimed.

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
8 months 2 days ago - 8 months 2 days ago #246015 by Joffm
Hallo,
Zunächst ein kurze Erläuterung.
"LimeSurvey Cloud" bedeutet hier, dass Dein Arbeitgeber LimeSurvey bei der LimeSurvey GmbH "gemietet" hat.
Im Gegensatz zur "Community Edition", wo jeder selbst gehalten ist, LimeSurvey irgendwo zu installieren.

Gut, zur Frage:

 Ich habe zwar eine Lösung gefunden, aber ich vermute sehr, dass das Ganze viel einfacher geht.

Ja, das stimmt.
1. Das ist nur eine Kleinigkeit.
Die Bedingung für die Kinder lauten bei Dir
1. F0==1 or  F0==2 or F0==3 or F0==4 or F0==5 or F0==6 or F0==7
2. F0==2 or F0==3 or F0==4 or F0==5 or F0==6 or F0==7
usw.
Denken wir etwas nach!
Die Fragen zum ersten Kind werden angezeigt, wenn es überhaupt eines gibt, die Anzahl der Kinder also größer 0 ist.
Und die Fragen zum zweiten Kind, wenn die Anzahl der Kinder größer als 1 ist, usw.
Kurz
1. F0>0
2. F0>1
3. F0>2
usw.

2. Nun aber zur nächsten Gruppe.
Das war wirklich umständlich.
Wann wird die Gruppe denn angezeigt?
Wenn mindestens einmal "Nein" kam.
Also 
F3a_1.NAOK==2 OR F6a_1.NAOK==2 OR F9a_1.NAOK==2 OR ...
Kennen wir aus der Schule: Eine ODER-Verknüpfung ist WAHR, wenn ein Term WAHR ist

Denken wir wieder etwas weiter:
Die Gruppe wird angezeigt, wenn die Anzahl der "Nein" größer als 0 ist
D.h. wir müssen diese Anzahl zählen.
Dazu gibt es die Funktion "countif"
Sie wird erklärt mit Count the number of answered questions in the list equal to the first argument
[url] manual.limesurvey.org/ExpressionScript_-...mplemented_functions [/url]
Dann wäre die Bedingung für diese Gruppe
countif("2",F3a_1.NAOK,F6a_1.NAOK,F9a_1.NAOK,F12a_1.NAOK,F15a_1.NAOK,F18a_1.NAOK,F21a_1.NAOK)>0
Heißt also, wenn mehr als 0-Mal die 2 gewählt wurde, wird die Gruppe gezeigt.
Das NAOK ist hier wichtig, das ja manche der Fragen nicht gezeigt werden können (wenn es weniger als 7 Kinder sind); dann sind die Antworten nicht definiert und das schöne Konstrukt "geht in die Hose".
Siehe auch hier
[url] manual.limesurvey.org/ExpressionScript_-...ion/en#Usage_of_NAOK [/url]

Damit ist diese Kuh also vom Eis.

Gestatte mir noch eine Bemerkung zum Fragebogen selbst.
1. Die Frage nach der Kinderzahl und Schulart mittels Drop-Down halte ich für schlecht.
Drop-Downs sind lästig, da man zunächst klicken muss, um zu sehen, was als Antwort angeboten wird, und dann noch einmal um auszuwählen.
Sie haben natürlich ihre Berechtigung, wenn es wirklich viele Antwortoptionen gibt (der Name der Schule)
Hier könnte man evtl. nur die Schulen und auch nur die Klassenstufen der ausgewählten Schulart anzeigen.

2. Die "Ja/Nein" Frage als Matrix? Ja, okay; die Optionen kommen mir halt etwas verloren vor.

Kleine Idee
 

Joffm


P.S.
Deine andere Lösung habe ich mir noch nicht angeschaut.
Nach dem Frühstück.

Volunteers are not paid.
Not because they are worthless, but because they are priceless
Last edit: 8 months 2 days ago by Joffm.
The following user(s) said Thank You: Gelimed

Please Log in to join the conversation.

  • Gelimed
  • Gelimed's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
8 months 2 days ago - 8 months 2 days ago #246016 by Gelimed
Hallo Joffm,
vielen Dank für die schnelle ausführliche Antwort VOR dem Frühstück!!!
Hatte ich doch richtig vermutet, dass ich bei den Bedingungsmöglichkeiten noch ganz am Anfang stehe...
...und bei der Auswahl der richtigen Fragenvorlagen auch... - vielen Dank für deine Idee, sieht viel besser aus.
Mittlerweile habe ich in Gruppe 485 noch einen Fehler entdeckt - sie wird mehrmals angezeigt, wenn man z.B. 3 Kinder mit "Ja" auswählt.
Ich werde mich sofort mit deiner Konfiguration der Bedingungen beschäftigen! Wahrscheinlich dann noch intensiver nach meinem Urlaub, der heute 12:00 Uhr beginnt...:-)
VG Gelimed
Last edit: 8 months 2 days ago by Gelimed.

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
8 months 2 days ago #246017 by Joffm
Kleiner Zusatz:
Du kannst auch den Text "taylorn".
Dass also Texte wie diese
"Aus welchen Gründen nimmt Ihr Kind / nehmen (manche) Ihrer Kinder nicht an der Schulverpflegung teil?"
je nach Kinderzahl und Antwort auf Teilnahme "Ja/Nein" entweder in der Einzahl oder Mehrzahl dargestellt werden.

Du hast ja alle dafür nötigen Informationen.

Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The following user(s) said Thank You: Gelimed

Please Log in to join the conversation.

  • Gelimed
  • Gelimed's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
8 months 2 days ago #246018 by Gelimed
Danke - ja, das hatte ich gesehen, dass das möglich ist, wollte mich aber erstmal mit den Grundlagen der Bedingungen beschäftigen - gemäß meinem Motto: Eins nach dem Anderen :-)

Please Log in to join the conversation.

  • Gelimed
  • Gelimed's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
8 months 2 days ago - 8 months 2 days ago #246019 by Gelimed
...noch eine Frage: Wie verkleinert man denn die Bootstrap-Buttons - bei dir sind sie schön angeordnet, bei mir nicht.
Last edit: 8 months 2 days ago by Gelimed.

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
8 months 2 days ago #246022 by Joffm
In den Einstellungen gibt es einen neuen Menüpunkt mit "Anzahl pro Zeile" und "Größe"
ABER: Ich habe nicht ohne Grund vorgeschlagen nach Schulart zu splitten.
Wie Du in der Dokumentation zu bootstrap lesen kannst, beruht alles auf einem Gitter mit 12 Spalten.
Heißt, maximal 12 Buttons pro Zeile.
 

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The following user(s) said Thank You: Gelimed

Please Log in to join the conversation.

  • Gelimed
  • Gelimed's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
8 months 2 days ago #246023 by Gelimed
Ok, vielen Dank für die vielen Hinweise!
Ich habe jetzt die countif-Bedingung für beide Fragengruppen (484 und 485) übernommen - funtioniert wunderbar, herzlichen Dank!
Machst du diese Arbeit wirklich komplett ehrenamtlich? Dann würde ich meinen Arbeitgeber mal darauf hinweisen - auch wenn es der öffentliche Dienst mit tausenden von Vorschriften ist, ist - hoffentlich - eine Unterstützung des Projekts möglich!
VG Gelimed

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
8 months 2 days ago - 8 months 2 days ago #246026 by Joffm
So, hier kommt dann noch ein Schmankerl.
Wie es geht, kannst Du in meinem Tutorial 1: Matrizen nachlesen, Kap. 1.1., 2. und 6.
Findest Du hier auf einer der folgenden Seiten; ist wohl jetzt schon auf Seite 12 gerutscht.

 




Und die Lösung in der zweiten Umfrage war doch eigentlich richtig, bis auf 
F3a_1 == 2 or F6a_1 == 2 or F9a_1 ==2 or F12a_1 ==1 or F15a_1 ==1 or F18a_1 ==1 or F21a_1 ==1
Wo kommen da die "1" her.
Genau dieses hatte ich ja auch als erste (lange) Lösung gezeigt.

Schönen Urlaub

Joffm

P.S.
Ja, wir machen diese Arbeit hier im Forum "aus Jux und Tollerei" - und für ein kleines "Danke schön", wenn wir helfen konnten.

Es nützt übrigens nichts, wenn Du die IDs der Fragegruppen bzw. Fragen nennst.
Beim Import werden diese geändert, da es sich dabei um einen laufenden Index in der Datenbank handelt.
Daher wissen wir nicht, was bei Dir 484 oder 485 ist.
Kannst Du ja selbst einmal ausprobieren.
Mache einen lss Export der Umfrage und importiere diesen dann wieder.


EDIT
Da sind wohl die Pferde mit mir durchgegangen.
Die zweite Frage wird doch nur generell und nicht schülerbezogen gestellt.
Naja, schadet ja nicht.
 

Volunteers are not paid.
Not because they are worthless, but because they are priceless
Last edit: 8 months 2 days ago by Joffm.
The following user(s) said Thank You: Gelimed

Please Log in to join the conversation.

  • Gelimed
  • Gelimed's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
7 months 3 weeks ago #249766 by Gelimed
Guten Morgen,

vielen Dank, der Urlaub war sehr schön...das sieht ja richtig gut aus - genau so hatte ich es mir am Anfang vorgestellt und dann auch dein Tutorial für Matritzen gefunden und sofort angewendet - um festzustellen, dass Javascript bei mir nicht aktiviert ist. Ich hoffe, mein Admin aktiviert das, sobald er aus dem Urlaub zurück ist.
Bis dahin versuche ich mich jetzt erstmal mit dem Maßschneidern vertraut zu machen.
Viele Grüße und herzlichen Dank für all die guten Hinweise!

Please Log in to join the conversation.

  • Gelimed
  • Gelimed's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
7 months 2 weeks ago - 7 months 2 weeks ago #250053 by Gelimed
=11.0ptHallo lieber Helfer,=11.0pt =11.0ptes hat sich ein weiteres für mich bisher unlösbares Problem aufgetan bezüglich der Gruppe "Zufriedenheit mit der Schulverpflegung" mit der Bedingung=11.0ptcountif("2",F3a_,F6a_,F9a_,F12a_,F15a_,F18a_,F21a_)>0, und zwar folgendes:=11.0ptDie erste Frage der Gruppe ("An wie vielen ") hat 7 Teifragen (für Schulkind 1-7). Wenn manche Kinder gar nicht am Essen teilnehmen, sollte die entsprechende Teilfrage auch nicht auftauchen. Also es sollten nur die Teilfragen angezeigt werden für die Kinder, die auch am Essen teilnehmen.=11.0ptIch habe Relevanzgleichungen in die Teilfragen eingegeben, die auch funktionieren - aber nur OHNE die oben genannte Gruppenbedingung. Sobald ich die Gruppenbedingung wieder einfüge, werden alle Teilfragen angezeigt.=11.0ptKann da jemand helfen?=11.0ptOder soll ich dafür ein neues Thema öffnen?
Wie kann ich hier ein Bild einfügen der Teilfragen-Relevanzgleichungen? Direkt ist es mir nicht
Viele Grüße
Niklas
Last edit: 7 months 2 weeks ago by Gelimed. Reason: Korrektur

Please Log in to join the conversation.

  • Gelimed
  • Gelimed's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
7 months 2 weeks ago - 7 months 2 weeks ago #250054 by Gelimed
Last edit: 7 months 2 weeks ago by Gelimed. Reason: Korrektur

Please Log in to join the conversation.

Moderators: Joffm

Lime-years ahead

Online-surveys for every purse and purpose