Conception
Rappel de réponses
CallWeb peut rappeler trois types d'information dans le texte des questions, dans les notes et dans les catégories de réponses :
Le rappel de réponses peut être effectué sur tout type de question, que ce soit des questions ordinaires posées au cours du question, des questions BLANK, des questions CALCUL, ou autres.
Exemple de rappel de réponse de la question Q1 :
Instruction dièse de rappel
Des valeurs de rappel particulières peuvent être créées grâce aux instructions « # Recall » ou « # Rappel ». Voici la syntaxe de cette instruction :
Ces valeurs sont rappelées en utilisant la syntaxe suivante : &#ETIQUETTE. Par exemple, tous les icônes « Nouveau » dans cette documentation apparaissent grâce au rappel &#NEW qui est défini par l'instruction dièse suivante :
Pour éviter les collisions avec les symboles HTML, etiquette doit être rappelée en majuscules et doit débuter par une lettre. L'étiquette peut contenir des lettres, des chiffres et le trait souligné.
# RAPPEL (ou # RECALL) peut utiliser des conditions d'affichage de sorte que différentes substitutions peuvent avoir lieu dans différentes circonstances. Les conditions d'affichage sont placées immédiatement avant le texte de la valeur rappelée, comme ceci :
Dans cet exemple, &#WORD rappelle « mot » (au singulier) si AQ1 est plus petit ou égal à 1 et « mots » (au pluriel) si AQ1 est plus grand que 1.
La condition d'affichage est exprimée en syntaxe xBase à moins qu'elle ne soit à l'intérieur d'accolades auquel cas elle est exprimée en syntaxe Perl. Si la condition d'affichage contient un crochet fermé (comme une expression régulière Perl qui inclut des classes de caractères), utilisez des crochets ouverts et fermés doubles pour délimiter la condition (comme dans [[{condition}]]). CallWeb utilise le texte rappelé de la première condition d'affichage qui correspond au contexte. La condition [AUTREMENT] est toujours vraie; elle peut donc avantageusement compléter une liste de conditions.
Si le rappel est suivi d'un tilde (p.ex. &#WORD~), ce caractère sert de délimiteur pour le nom du rappel et il n'est PAS transmis à la page de questionnaire ce qui permet de ne pas avoir d'espace entre le rappel et le texte qui suit le rappel.
Caractéristiques avancées
Les valeurs rappelées sont insérées dans une borne HTML <SPAN> pour leur attribuer le style SUBSTITUT. Ceci peut entrer en conflit avec l'affichage de certaines valeurs rappelées — particulièrement si les valeurs en question sont placées dans des hyperliens. Pour éviter l'ajout du style SUBSTITUT, insérez un tilde (~) entre les symboles de rappel et le nom de la variable, comme ceci :
Dans un script CallWeb, on peut rappeler n'importe quelle variable disponible dans l'environnement Perl (voir l'annexe portant sur les données de contexte, en particulier). La syntaxe de rappel est alors {$variable}. Par exemple, l'en-tête de page suivante afficherait le numéro du dossier :
Les valeurs rappelées peuvent contenir des rappels de valeurs. Par exemple, l'instruction suivante est valide et rappelle la valeur _telkey en utilisant &#TELKEY :
Il y a un autre type de rappel (bien qu'il s'agisse de plus que d'un simple rappel). Toute expression Perl (ici, on n'est pas limité aux noms de variables) peut être affichée, là où des substitutions sont permises, en utilisant la syntaxe suivante :
Grâce à cette syntaxe, on peut afficher le résultat d'un calcul complexe sans avoir à l'enregistrer au préalable dans un champ de question.
Il est aussi possible de calculer le résultat d'un rappel dans une question ou dans une borne EXECUTE. Référez-vous à la fonction « substitue » dans la page portant sur les questions calculées.
Finalement, voici une forme spécialisée de substitution : <crypt>texte</crypt>. Le texte entre les bornes est chiffré en utilisant la fonction obscurcir. Il y a une application particulière de ce type de substitution. Les options accompagnant une adresse de questionnaier CallWeb peuvent être camouflées en utilisant une syntaxe comme celle-ci :
qui produit
Utilisé dans une invitation par courriel, par exemple, CallWeb chiffre la valeur entre les bornes <crypt></crypt> et associe le résultat à l'option d'URL _crypt. Cette option est décompressée par CallWeb pour recouvrer les options et valeurs initiales que le texte chiffré contient. Il est possible de ne chiffrer qu'une partie des options d'URL s'il y a un avantage à ce faire.