Actions

Setting conditions/fr: Difference between revisions

From LimeSurvey Manual

(Created page with "Pour commencer à copier les conditions, vous devez d'abord sélectionner la question à laquelle la ou les conditions sont appliquées (question 'LowQ' dans notre cas). Séle...")
(Created page with "<div class='simplebox'>FILe:help.png '''Remarque :''' Les conditions ne peuvent être définies qu'en fonction des questions qui apparaissent avant la question sur laquell...")
Line 457: Line 457:




<div class='simplebox'>[[FIle:help.png]] '''Note:''' Conditions can only be set based on questions that appear before the question on which the condition is set.</div>
<div class='simplebox'>[[FILe:help.png]] '''Remarque :''' Les conditions ne peuvent être définies qu'en fonction des questions qui apparaissent avant la question sur laquelle la condition est définie.</div>


Please pay attention to how the copy conditions functions work when you wish to copy and apply a set of conditions located under different scenarios to another question which uses the same or different scenario id numbers. To summarise the possible cases you might have, check the following example:
Please pay attention to how the copy conditions functions work when you wish to copy and apply a set of conditions located under different scenarios to another question which uses the same or different scenario id numbers. To summarise the possible cases you might have, check the following example:

Revision as of 08:30, 28 September 2023

Ce contenu n'est pas à jour, pour avoir un contenu à jour, veuillez vous rendre sur la page anglaise:

{TRANSLATED(lang="en")}Setting conditions{TRANSLATED}


Conditions existantes

LimeSurvey possède une fonctionnalité de branchement logique très puissante. Il est accessible en cliquant sur le bouton Définir les conditions - - situé sur chaque barre des questions.

Dans ce chapitre, nous décrirons :

  • quelles conditions vous pouvez trouver dans LimeSurvey
  • ce que vous pouvez et ne pouvez pas faire avec les conditions
  • quelles étapes vous devez apprendre pour configurer des conditions simples ou plus complexes

Pour obtenir des instructions vidéo étape par étape, consultez ce didacticiel ou téléchargez l'échantillon d'enquête sur les conditions : [[Media:LimeSurvey_Survey_Setting_Conditions.zip|LimeSurvey_Survey_Setting_Conditions.zip] ].


 Hint: Les fonctionnalités des conditions fonctionnent comme une interface graphique pour les expressions et équations pouvant être appliquées aux questions, permettant aux utilisateurs d'augmenter facilement la complexité de leurs enquêtes sans entrer dans les expressions et la pertinence. équations. Cependant, l'ExpressionScript doit être étudié/connu pour augmenter la gamme d'options disponibles dans LimeSurvey.


Masquer/Afficher les branchements par rapport aux branchements sautés

Vous pouvez concevoir des branchements logiques avec LimeSurvey, ce qui signifie que vous pouvez décider que certaines questions ne seront affichées que si certaines conditions sont remplies, comme "Afficher la question X si la réponse à la question Y était Z".

Notre approche consiste à mettre en œuvre une Masquer/Afficher une logique de branchement :

  • vous pouvez définir une condition ou un ensemble de conditions sur chaque question de votre enquête - si la condition est remplie, la question sera alors affiché :



En termes simples :
  • une question sans condition définie sera toujours affichée;
  • une question avec une condition définie ne sera affichée que si la condition est remplie .

Cette approche est différente de la Jump Branching Logic qui est parfois implémentée par d'autres logiciels. Dans la Jump Branching Logic, l'action résultant d'une condition remplie serait de passer à une autre question (c'est-à-dire de masquer toutes les questions intermédiaires). LimeSurvey n'implémente pas cette méthode Jump Branching Logic. Au lieu de cela, si vous souhaitez sauter une série de questions, vous devez simplement définir la même condition pour toutes les questions que vous ne souhaitez pas afficher. Par exemple, si la condition de saut que vous souhaitez définir sur la question 2 est "Sauter à la question 5 si la réponse à la question 1 est 'Oui'", vous pouvez simplement :

  • définir une condition sur les questions 2, 3 et 4 pour afficher uniquement "si la réponse à la question 1 était NON 'Oui'"

LimeSurvey facilite la définition de la même condition sur plusieurs questions (et donc la mise en œuvre de Jump Branching Logic) en vous permettant de "copier" une condition d'une question à une série d'autres. Dans l'exemple ci-dessus, vous commenceriez par définir la condition sur la question 2, puis, à partir du même écran, vous copieriez cette condition sur la question 3 et la question 4.

Pour en savoir plus sur la façon dont vous pouvez copier des conditions dans LimeSurvey, veuillez continuer à lire la section wiki.


Types de conditions pris en charge

Fondamentalement, une condition peut comparer des valeurs et renvoyer vrai ou faux.

Les valeurs pouvant être comparées sont les réponses aux questions précédentes. Par exemple, si vous répondez « Oui » à la question 1, la question 2 sera alors présentée au répondant :





À ce stade, il est important de comprendre ce qui est considéré comme une entrée de question éligible pour l’éditeur de conditions.

Une question-saisie est soit :

  • une question simple (pour tous les types de questions sauf les questions Array)
    • par exemple : des questions textuelles, des listes radio ou déroulantes, et même des choix multiples questions
  • ou une ligne dans les questions Array (sauf pour les questions Array dual scale et Array multiple flexible)
    • par exemple : tableau avec 5 boutons radio ou tableau avec questions d'étiquette
  • ou soit la partie gauche ou la partie droite d'une question Array à double échelle
  • ou chaque cellule d'une question Array flexible

Template:Remarque

  • valeurs constantes
    • par exemple : "Si vous avez répondu plus de 18 ans à la question ci-dessous"



  • Données de profil des participants : Pour utiliser les données du tableau des participants à l'enquête, les « Réponses anonymisées » doivent être définies sur NON. Cette option se trouve dans le panneau Paramètres des participants de l'enquête.





Plusieurs opérateurs de comparaison sont pris en charge - du simple « égal » à l'« expression régulière » avancée :

  • Les opérateurs de base font référence aux opérations « égal » et « différent de » 
  • Le « plus grand/moins La famille d'opérateurs than est également disponible et est généralement utilisée lors de l'utilisation d'entrées de questions numériques
    • Veuillez noter que les comparaisons sur les champs numériques utilisent l'ordre numérique. Par exemple, 2 < 10
    • Si vous utilisez une entrée de question dont le type est texte, la condition peut être évaluée comme "2" > "10" (ordre des chaînes) !
    • Questions numériques, ainsi que les questions textuelles (lorsqu'elles ont l'attribut 'numbers_only' défini), utiliseront l'ordre numérique pour les comparaisons !N !* Un opérateur de comparaison avancé utilisant des expressions régulières est également disponible (pas de panique ! Si vous ne savez pas ce que cela signifie, alors vous n'en avez pas besoin)
    • le motif ne doit pas être entouré de caractères '/'
    • par exemple : [a-zA -Z]$


Comment puis-je combiner les conditions ?

Vous pouvez construire des conditions complexes' en combinant des conditions simples avec les opérateurs logiques ET et OU .



Cependant, il est important de comprendre que LimeSurvey détermine automatiquement quel opérateur logique appliquer. Cela signifie que l'utilisation des opérateurs OU ou ET est déterminée selon le contexte de la condition. Dans l'exemple ci-dessus, il n'y a qu'un seul scénario. Cela signifie que LimeSurvey utilise l'Algèbre booléenne, ce qui signifie que l'opérateur ou est « calculé » en premier.

Nous parlerons davantage des conditions complexes plus tard. Attardons-nous d'abord ensemble sur les élémentaires.

Le concepteur des conditions

Tout d'abord, vous devez accéder aux Concepteur de conditions. Pour cela, cliquez sur la question à laquelle vous souhaitez appliquer la condition :



Maintenant, recherchez le bouton « Définir les conditions » situé dans la barre de questions supérieure :



Une fois accédée, la page suivante s'affichera :



Le panneau du concepteur de conditions peut être divisé en trois sections :


La barre d'outils du concepteur de conditions

Vous pouvez trouver sur la barre d'outils les options suivantes :



  • Afficher les conditions pour cette question : Cliquez sur ce bouton pour obtenir un aperçu rapide des conditions existantes actuelles qui sont appliquées à votre question.
  • Ajouter et modifier des conditions : Il représente la page par défaut qui s'ouvre automatiquement une fois que vous cliquez sur le bouton Définir les conditions. Il est divisé en deux parties : (1) un tableau affichant toutes les conditions et scénarios existants, et (2) le menu ajouter/modifier les conditions.
  • Copier les conditions : Parfois, vous souhaitez appliquer la même condition à X questions afin d'afficher la question Y à la fin. Pour cela, cliquez sur Copier les conditions. Une nouvelle fenêtre s'ouvrira affichant les conditions existantes actuelles ajoutées à votre question (appelons-la question3). Pour les ajouter à la question5, cochez les conditions que vous souhaitez copier, sélectionnez la question5, et cliquez sur le bouton Copier les conditions situé en bas à gauche du panneau. Pour plus d'informations, veuillez continuer à lire la section wiki.
  • Enregistrer et fermer : Une fois que vous avez terminé les modifications, cliquez sur Enregistrer et fermer pour enregistrer vos conditions.
  • Déplacer vers la question : Afin de ne pas quitter le panneau de conception de conditions en passant à une autre question, utilisez l'option suivante pour sélectionner dans la liste déroulante la question suivante à laquelle vous souhaitez appliquer des conditions. Veuillez noter que la liste déroulante affiche les questions affichées dans l'enquête avant et après la question actuelle.
  • Fermer : Si vous souhaitez quitter le panneau sans effectuer de modifications, vous pouvez soit aller directement à l'onglet paramètres/structure et sélectionner l'option souhaitée, soit cliquer sur Fermer, qui se trouve en haut à droite de l'écran.


Aperçu des conditions existantes

Cette section affiche un tableau qui contient tous les scénarios et conditions existants d'une question. Certaines actions peuvent être effectuées à partir d'ici :



  • Dans la partie supérieure droite, trois actions sont disponibles :
    • Ajout rapide de conditions - cela accélère le processus d'ajout de conditions (lisez below pour en savoir plus sur toutes les options )
    • Renuméroter les scénarios - si vous cliquez dessus, les scénarios seront renumérotés avec des numéros incrémentiels commençant à un. Veuillez noter que cette option ne s'affiche que si deux scénarios ou plus sont appliqués à votre question.
    • Supprimer toutes les conditions - vous pouvez supprimer via cette action toutes les conditions et scénarios existants actuellement appliqués à votre question.



  • En plus du numéro d'identification de chaque scénario, il y a trois boutons qui vous permettent d'effectuer les actions suivantes :
    • Supprimer le scénario
    • Changer le numéro du scénario
    • Ajouter une condition à ce scénario - cliquez dessus bouton pour ajouter une autre condition au scénario souhaité



  • Deux actions peuvent être effectuées sur chaque condition :
    • Supprimer la condition
    • Modifier la condition - si vous cliquez dessus, vous pourrez modifier la condition à partir du menu conditions


Ajouter/Modifier des conditions

La partie inférieure de l'écran est affectée au menu Ajouter/Modifier des conditions :



Vous pouvez également éditer la condition depuis le même endroit si vous avez appuyé au préalable sur le crayon vert qui correspond à la question que vous souhaitez éditer (voir le tableau des conditions et scénarios).

Pour comprendre le fonctionnement de la fonctionnalité conditions dans LimeSurvey, nous présenterons dans un premier temps les conditions élémentaires.


Note : Pour le moment ne modifiez pas le scénario par défaut () qui est automatiquement sélectionné dans le formulaire d’ajout de condition. Cela sera abordé plus tard dans cette section wiki.


Définition des conditions élémentaires

Une condition élémentaire est simplement une condition unique sans aucun opérateur logique OU ou ET.

Elle est composée de :

  • un opérande de gauche : la "valeur testée". Vous pouvez choisir le type « valeur testée » en sélectionnant l'onglet approprié dans l'éditeur de conditions. Il peut s'agir d'une question précédente ou d'un attribut de participant à l'enquête.



Si vous sélectionnez une saisie de question (depuis l'onglet Questions précédentes) et si cette question utilise des réponses prédéfinies, alors les réponses prédéfinies correspondantes sont affichées sous l'onglet Prédéfinies de la sélection des valeurs de comparaison. .


Notez que pour utiliser le jeton, votre enquête doit :


  • un « opérateur de comparaison ». Choisissez l'"opérateur de comparaison" que vous souhaitez appliquer dans la liste déroulante ("inférieur à", "inférieur ou égal à", "égal à", "différent de", " supérieur ou égal à, supérieur à, expression régulière).


  • un opérande de droite : la "valeur de comparaison". Vous pouvez choisir le type « valeur de comparaison » en sélectionnant l'onglet approprié dans l'éditeur de conditions. Lorsque vous créez une condition, vous pouvez sélectionner comme valeur de comparaison une valeur prédéfinie (réponse), une constante, une question, un attribut de participant à l'enquête ou une expression régulière :


Exemple de conditions élémentaires et comment les créer

  • Afficher la question 'AAMN' si "la réponse à la question 'Sexe' est la réponse prédéfinie 'Homme'"
    • valeur testée = réponse à la question 'Sexe'
** opérateur de comparaison = égal à
    • valeur de comparaison = code de réponse prédéfini (la réponse 'Homme' dans ce cas)



  • Afficher la question 'Alcool' si "la réponse à la question 'Âge' est supérieure ou égale à la valeur numérique '18'"
    • valeur testée = réponse à la question 'Âge '
    • opérateur de comparaison = supérieur ou égal à
    • valeur de comparaison = la valeur constante '18'



  Attention : Lorsque vous utilisez une « valeur de comparaison » constante pour une question de date, quel que soit le format de date défini dans votre enquête, vous devez utiliser le format de date AAAA-MM-JJ.



  • Afficher la question 'Alcool' si "la réponse à la question 'BirthDate' est supérieure au 2000-01-01"
    • valeur testée = réponse à la question 'BirthDate' '
    • opérateur de comparaison = Supérieur ou égal à
    • valeur de comparaison = '2000-01-01' (le format dans le champ constant : 2000-01-01 )



  • Afficher la question 'Alcool' si "l'historique de consommation d'alcool attribut du participant" correspond à la chaîne 'Oui'.
    • valeur testée= le ' Valeur DrinkingHistory extraite du tableau des participants à l'enquête
    • « opérateur de comparaison » = égal à
    • « valeur de comparaison » = la valeur constante « Oui »


Conditions et scénarios dans LimeSurvey

Combinaisons de conditions par défaut

Comme indiqué précédemment, LimeSurvey décide automatiquement quel opérateur logique (ET ou OU) doit être appliqué entre les conditions en fonction du « contexte ».

Notez également que l'ordre dans lequel vous définissez vos conditions élémentaires n'est pas pertinent puisque LimeSurvey les réordonnera automatiquement selon sa propre logique.

Étudions cela en détail. Deux règles doivent toujours être mémorisées :

  • Première règle : les conditions ayant la même « valeur testée » sont reliées par un OU 
*  Deuxième règle : les conditions ayant des valeurs testées différentes sont associées ensemble


Première règle : les conditions ayant la même « valeur testée » sont combinées en OU

Lorsque vous avez plusieurs conditions, elles sont ORed ensemble si elles partagent la même valeur testée. C'est le cas si la condition s'applique à plusieurs réponses appartenant à une même question. Par exemple, une condition a été appliquée ci-dessous à trois réponses appartenant à la même question - si la réponse à la question « FavColour » est égale à « vert » « « OU » la réponse à la question « FavColour » est égale à « rouge » « « OU » La réponse à la question « FavColour » est égale à « bleu », alors la question « BirthDate » sera affichée au répondant à l'enquête :



Remarque : Pour sélectionner plusieurs réponses prédéfinies, n'oubliez pas de maintenir la touche Maj ou Ctrl enfoncée tout en sélectionnant les valeurs testées.


Deuxième règle : les conditions ayant des « valeurs testées » différentes sont combinées par ET

Lorsque vous avez plusieurs conditions, elles sont ET ensemble si elles ne partagent pas les mêmes valeurs testées. Par exemple, vous pouvez voir ci-dessous le cas de plusieurs conditions basées sur différentes questions précédentes - "Si la réponse à la question 'Alcool' est égale à 'Y', répondez ET, la réponse à la question 'Sexe' est égale à 'F'", la question « Consommation d'alcool » sera alors affichée au répondant à l'enquête :



Les questions à options multiples

Remarque : Ce paragraphe s'applique aux questions « Options multiples » et « Options multiples avec commentaires », et non aux questions « Tableau multiple flexible (nombre) avec questions de disposition des cases à cocher (dans ce dernier cas, chaque case à cocher est une entrée de question distincte et n'est pas vraiment traitée comme d'autres types de questions à options multiples).


Les types de questions « Choix multiple » et « Choix multiple avec commentaires » seront affichés en deux versions :

  • une version « Groupe de cases à cocher » qui vous permet de définir des conditions sur toutes les réponses possibles des questions respectives. question;
  • un ensemble d'entrées « Case à cocher unique » qui vous permet de définir des conditions sur chaque case à cocher individuellement.



Le groupe de cases à cocher saveur

Maintenant, concentrons-nous sur un exemple pour mieux comprendre la différence entre les deux saveurs. Imaginons que nous souhaitions afficher la question « Pointchoice » uniquement si le répondant coche au moins une des « réponses testées » répertoriées sous la question « Organisations multiples ».

Comme mentionné ci-dessus, le groupe de cases à cocher vous permet de définir des conditions sur toutes les réponses possibles à la question respective. Par conséquent, seules les options qui font référence aux responsabilités sont sélectionnées comme « valeurs de comparaison » ci-dessous :



Comme nous pouvons l'observer, les conditions sont soumises à un OU en raison de la saveur « Groupe de cases à cocher » sélectionnée au début. :



Conditions ET dans les questions à choix multiples

Maintenant, concentrons-nous sur un exemple similaire. Cependant, nous recherchons cette fois uniquement les membres les plus actifs pour leur poser d'autres questions. Pour ce faire, nous utilisons la version « Case à cocher unique » qui vous permet de définir des conditions en fonction de chaque case à cocher individuellement.

Dans cet exemple, la question X sera affichée si « A » et « B » sont cochées :



Une fois cela fait, vous pouvez observer que les deux conditions sont maintenant liées par ET.



Cela signifie que votre question ne sera affichée que si les deux valeurs testées (les sous-questions sélectionnées) sont remplies.


L'utilisation de scénarios - Utilisation de conditions OR entre différentes questions

Maintenant, vous pouvez affirmer que parfois vous avez besoin d'avoir des conditions « ORed » même lorsqu'elles sont définies sur des questions différentes (c'est-à-dire sur des « valeurs testées » différentes). C'est pourquoi nous avons des scénarios !


Définition d'un scénario

Un scénario est simplement un regroupement manuel de conditions dans lequel certaines conditions sont évaluées indépendamment des autres conditions issues d'autres scénarios. La condition complexe résultant de cette association de plusieurs scénarios ne sera remplie que si un seul scénario est réalisé. En d'autres termes, les scénarios sont des regroupements logiques de conditions, respectant les règles ci-dessus, et qui sont reliées ensemble pour créer des conditions complexes.

Tout ce qui est décrit ci-dessus s'applique aux conditions situées dans chaque scénario. Par défaut, toutes les nouvelles conditions sont créées dans le « Scénario par défaut », qui utilise le numéro « 1 » comme identifiant. Lorsque vous créez de nouvelles conditions, vous pouvez choisir si elles sont ajoutées ou non au scénario par défaut. Pour changer de scénario, il suffit d'utiliser un autre identifiant.


Ajout d'une question à un autre scénario

Lorsque vous créez (ou éditez) une condition, vous pouvez modifier le scénario dans lequel la condition est stockée en cliquant simplement sur le bouton ajouter un scénario :



Comme vous pouvez le constater, le scénario par défaut utilise comme identifiant « 1 ». Pour ajouter des conditions à différents scénarios, modifiez l'identifiant en tapant un numéro différent dans la case.

Le numéro d'identification d'un scénario n'a aucune importance et différents scénarios peuvent avoir des identifiants non continus.



Vous pouvez modifier le numéro attribué à un scénario en cliquant sur cette icône et en attribuant le nouvel identifiant au scénario.



Remarque : Comme indiqué ci-dessus, les numéros de scénario n'ont aucun impact sur la manière dont les conditions sont évaluées. Cependant, une modification des numéros de scénarios est nécessaire afin de :
  • décider dans quel ordre les scénarios sont affichés lors de l'utilisation de la version imprimable d'une enquête
  • fusionner les conditions de deux scénarios (afin de fusionner le scénario 10 avec le scénario 1, il suffit de renuméroter le scénario 10, pour qu'il soit le scénario 1).


Exemple : créer trois scénarios

Pour créer trois scénarios, vous avez besoin d'au moins trois conditions et d'ajouter à chacune d'elles un identifiant de scénario différent. Une fois cela fait, les scénarios vont être connectés entre eux via l'opérateur 'OR'. Par exemple, cela pourrait ressembler à ceci :


AND vs OR dans le même scénario

Vous pouvez vous retrouver dans certains cas avec des opérateurs logiques AND et OR dans le même scénario :



LimeSurvey s'appliquera toujours en premier OU. Pour plus de détails à ce sujet, vous pouvez consulter l'article Wikipédia suivant sur Algèbre booléenne.

Cependant. l'ordre des opérations peut également être observé dans le champ Équation de pertinence. Pour l'exemple ci-dessus, l'équation de pertinence est mise en évidence ci-dessous :



Comme on peut le constater, un jeu de parenthèses supplémentaires est ajouté pour les opérations logiques OU afin de faire savoir au logiciel qu'il doit être "calculé" en premier.


Aide : Pour plus d'informations sur les équations de pertinence, consultez les sections wiki ExpressionScript - Présentation et relevance équation.

Comment copier les conditions

La fonctionnalité de copie des conditions peut être utilisée lorsque vous souhaitez appliquer le même ensemble de conditions que celles que vous avez appliquées à la question 5 à la question 10. De cette façon, vous n’aurez pas à recréer manuellement les conditions que vous avez appliquées à la ou aux questions précédentes.

Pour commencer à copier les conditions, vous devez d'abord sélectionner la question à laquelle la ou les conditions sont appliquées (question 'LowQ' dans notre cas). Sélectionnez ensuite les conditions que vous souhaitez copier et sélectionnez la question à laquelle vous souhaitez ajouter les conditions (Question 'Alcool' dans notre cas).



Remarque : Les conditions ne peuvent être définies qu'en fonction des questions qui apparaissent avant la question sur laquelle la condition est définie.

Please pay attention to how the copy conditions functions work when you wish to copy and apply a set of conditions located under different scenarios to another question which uses the same or different scenario id numbers. To summarise the possible cases you might have, check the following example:

  • you wish to copy Scenario 1 - Condition A, Scenario 1- Condition B, Scenario 7 - Condition C, and Scenario 7 - Condition D from QuestionX into QuestionY
  • QuestionY already contains Scenario 1 - Condition A, Scenario - Condition C, Scenario 6 - Condition E, Scenario 8- Condition F.
  • Once copied, the following conditions will be applied to QuestionY:
    • Scenario 1: Condition A, Condition B, Condition C -> Condition A is not copied anymore as it already exists in QuestionY, only condition B being copied.
    • Scenario 6: Condition E -> not affected
    • Scenario 7: Condition C, Condition D -> a new scenario is created where the two conditions are added to it
    • Scenario 8: Condition F -> not affected


Reset conditions

To quickly reset all the survey conditions, click on one survey-related setting, look for Tools on the top toolbar, and click Reset conditions:



Next, confirm on the next page that you want to proceed and all the conditions will be deleted.


Things to watch out for

General considerations

There are a few basic rules you should keep in mind before setting conditions on a question:

  • Once a single condition has been set for a question, that question will not be displayed unless that condition is met.
  • Conditions can only be set based on questions that appear before the question on which the condition is set.
  • If you change the order of questions in your survey after you create conditions, LimeSurvey does not warn you if the changed order will break any of your conditions. You should always put aside the creation of conditions until you are satisfied with the order of questions and groups in your survey.
  • You can modify conditions even after a survey has been activated. This should be done with caution, as there is no "consistency checking" applied here.


Conditions using the 'no answer' predefined answer


Setting the following condition "Show question 'FavColour' if the answer to the question 'Gender' is 'no answer'" really means "show question 'FavColour' if question 'Gender' was displayed to the survey participant who did not submit answer".


 Hint: To have the no answer option displayed as a predefined answer, the question cannot be mandatory.


Chained conditions

If you set conditions on a question that, itself, has conditions, you could end up with your survey behaving in ways you might not have predicted. For example, a typical side-effect is that if you hide all questions in a group with chained conditions, the group header will still be shown unless you correct these conditions as explained below.




In the above example, the 'Alcohol' question is displayed if the respondent has previously answered to the 'AAMN' question 'No (N)'. However, the 'AAMN' question might not be displayed at the end if the respondent did not select to the previous question ('Gender') answer 'Male (M)'. In this scenario, no 'Alcohol' question will be displayed if 'Male (M)' was chosen previously.

To have the 'Alcohol' question displayed, you have to copy the conditions from the earlier question(s) to the one you're editing. To have the 'Alcohol' question displayed, you need to set up the following set of conditions:

  • Show 'AAMN' if the answer to 'Gender' is 'Male (M)'
  • Show 'Alcohol' if answer to 'Gender' is 'Male (M)' and if answer to 'AAMN' is No (N)'.

After correction, the correct set of conditions for 'Alcohol' should look like this:



So if you are designing a complicated survey with a large number of conditions, make sure you test the survey for as many different combinations of results as you can think of.

To find out more on how you can copy conditions in LimeSurvey, please scroll up or click here to continue reading the dedicates wiki section.


Limitations and workarounds

Progress-bar

If you create a survey where many questions get skipped because of conditions, the progress bar either jumps over a set of questions or the survey ends at 50%.

To avoid such behavior, the questions that could be skipped should be arranged between the shown questions. In this way, only one or two questions get skipped per answer.

For example, based on Question1 (yes or no question), 14 questions (2A to 15A) will be displayed if the answer to Question1 is 'Yes', or 2B to 15B if the answer to Question1 was 'No'.

If you arrange the questions in one group and arrange them like 2A, 2B, 3A, 3B, and so on, you will get a nearly correct progress bar, while arranging the questions like 2A, 3A, 4A, [...], 2B, 3B, 4B, ... you will get a progress bar from 0 to 50% or from 50% to 100%, depending on the answer to the first question.


Setting a constant comparison value for a "Date" Question Type

You have to use the internal representation of Date values (which is YYYY-MM-DD) to define your constant comparison value.


Setting conditions for "Other" Options in the Multiple Options Question Type

In the multiple options question type, you can use the "Other" provided in the question type as a valid choice but you cannot set conditions on it. For example, Question No 1 says "Which color do you prefer to use?" Answer checkbox choices are Blue, Black and Other. If the participant chooses Blue, you can set a condition. If the participant chooses Black, you can set a different condition. However, if the participant chooses "Other" and types in something in the text box, there is NO way a condition can be set. LimeSurvey does not recognize if the participant chose the "Other" condition. This is NOT a bug but a limitation.

There is no real field recorded for the 'other' checkbox for this question type. Thus, the only way to know if the user has answered the 'other' part of the question or not would be to check if the value of the text written in the other input field is empty or not.

However, due to the specific way Multiple choice questions are handled, testing the 'other' text input field has never been implemented.

As a workaround, add an explicit answer option called 'Other' and do not use the built-in 'other' option of these question types. Then add an additional short text question which will be displayed if this 'Other' checkbox was clicked.


How to use parenthesis for the boolean expressions?

You can't!

If you want to design something like:

(condition1 OR condition2) AND (condition3 OR condition4),

you'll have to set up:

 (condition1 AND condition3) OR

 (condition1 AND condition4) OR

 (condition2 AND condition3) OR

 (condition2 AND condition4)