Conception
Questions calculées
Questions BLANK
Si le mot-clef « BLANK » apparaît sur la ligne de nom de question, alors
Une question BLANK peut comporter une condition d'affichage pour attribuer une valeur conditionnellement à d'autres réponses ou pour réaliser des sauts complexes.
Sauts complexes
Un saut simple associé au premier choix de réponse d'une question BLANK est respecté. Les questions BLANK peuvent être utilisées pour faire des sauts complexes en utilisant la condition d'affichage, c.-à-d., que la logique de saut complexe est placée dans la condition d'affichage alors que la destination du saut est associée à la première catégorie de réponse.
Les sauts complexes peuvent aussi être mis en oeuvre par le biais de questions CALCUL (voir le prochain paragraphe). Dans ce cas, un calcul est effectué; il retourne une valeur dans la même question (par exemple, mais ce n'est pas nécessaire, en autant qu'il existe une valeur dans la question CALCUL pour contrôler le saut); et les catégories de réponses sont associées à un saut simple. Par exemple, en utilisant une variable de contexte, le code suivant vérifie l'heure et ajuste de flot du questionnaire en conséquence :
Questions CALCUL
Si le mot-clef « CALCUL » apparaît sur la ligne de nom de question, CallWeb s'attend à ce que le texte de la question se conforme à la syntaxe suivante :
Cet énoncé retourne le résultat de l'évaluation de « expression_perl » dans « variable_de_sortie ». L'« expression_perl » doit respecter la syntaxe Perl et les noms de questions doivent être précédés d'un signe de dollar ($). Référez-vous au questionnaire de l'ÉchantiCalc du Réseau Circum; il fournit plusieurs exemples de calculs.
Quelques fonctions spéciales peuvent être utilisées dans une question CALCUL pour prendre en charge des besoins spécifiques aux sondages. On retrouve entre autres les suivantes :
BOUTON CALCULE
Il est parfois utile de faire un calcul mathématique sur une page, comme faire le total d'une série de réponses numériques et afficher le résultat. On peut faire cela en ajoutant un bouton à la page; ce bouton fera les opérations programmées dans une question CALCUL et réaffichera la même page, où un rappel de valeurs pourrait afficher les nouvelles informations.
Syntaxe de BOUTON CALCULE :
<COMPUTE BUTTON>QUESTION_CALCUL, texte</COMPUTE BUTTON>ou<BOUTON CALCULE>QUESTION_CALCUL, texte</BOUTON CALCULE>
QUESTION_CALCUL est le nom de la question CALCUL déclenchée par le bouton. Le texte qui suit QUESTION_CALCUL et une virgule est affiché sur le bouton. Si le texte est le nom d'un fichier (d'image), cette image est utilisée pour afficher le bouton. Dans ce cas, un troisième segment peut comporter le texte ALT de l'image. Une quatrième portion, toujours délimitée par une virgule, peut contenir le mot-clef NOTEST pour s'assurer que le calcul sous le bouton soit effectué même si les données sur la page ne se conforment pas aux tests normaux de validation.
Par exemple, le code suivant :
affiche le tableau suivant :
Note : d'autres logiciels de sondage Web utilisent JavaScript pour de telles opérations; pour être cohérent avec la philosophie de CallWeb, aucun JavaScript n'est utilisé pour programmer les BOUTON CALCULE. De plus, les opérations déclenchées par BOUTON CALCULE sont laissées au libre choix du concepteur du questionnaire (p.ex., total, somme des produits, extraction de données, manipulation de chaîne de caractères) puisqu'elles sont encapsulées dans une question CALCUL qui peut faire n'importe quelle opération et modifier plusieurs champs d'un seul coup.
La condition d'affichage de la question CALCUL déclenchée par le bouton est respectée.
Questions RANDOM
RANDT est obsolète. Veuillez utiliser la fonction random_integer décrite plus haut.
Si le mot-clef « RANDOM » apparaît sur la ligne de nom de question, CallWeb s'attend à ce que le reste de la question se conforme à l'une des syntaxes suivantes :
La fonction RANDT retourne, dans « variable_de_sortie », un entier aléatoirement choisi entre 1 et « nombre » ou la valeur de la question « variable_d_entree ».