Les questions de type Formule, permettent de réaliser des calculs, ou des concaténations en utilisant des valeurs ou des chaînes de caractères issues de champs précédemment complétés dans le formulaire.
Le mode avancé permets d’ajouter du JavaScript.
Opérateurs supportés :
- + , – , * , /
- = , > , >= , < , <= , <>
- & : Opérateur de concaténation de chaine (par exemple : la formule ‘hello’ & ‘ world’ donnera le resultat « helloworld »)
- RC : Opérateur de saut de ligne
Raccourcis clavier
- ctrl. + Entrée : Tester la formule
Mode avancé :
- Vous permet de saisir un bloc de code JavaScript à la place d’une formule au format Excel, c’est utile pour réaliser des l’algorithmes avancées.
- Les variables sont accessibles via _vars[‘nom_variable’]
- Le bloc de code doit retourner une chaîne (ou null) qui sera interprétée par le moteur de formule : pour renvoyer la valeur entière 2, le code correspondant est return « 2 »; Pour renvoyer la valeur chaîne test, le code correspondant est return ‘ » test » ‘
- Ce mode est réservé aux utilisateurs qui connaissent le Javascript
Modifieurs à injecter dans le résultat de la formule :
- [NC] et [C] : Non conformité et conformité
- [COLOR] : Couleur du texte
Variables disponibles :
- TITRE_MODEL : Le titre du modèle
- NUM_CHRONO : Le numéro chrono du formulaire
- REVISION : Le numéro de révision du modèle
- REFERENCE : La référence du modèle
- CODE : Le code du modèle
- CUR_ROW_INDEX : contient l’indice de la ligne courante dans un tableau dynamique
Rendez-vous sur formulajs.info pour plus de formules
Il existe également quelques fonctions complémentaires non listées dans formulajs :
- DATE_DIFF(date1, date2) : Retourne la différence (en secondes) entre deux dates
- DURATION_FORMAT(duration, format) : Permets de formater une durée en seconde dans un format spécifique
- DATE_ADD(date, nb, token) : Ajouter des jours, mois, années … à une date
- DATE_ADD_YEARS(date, nb) : Ajouter des années à une date
- DATE_ADD_DAYS(date, nb) : Ajouter des jours à une date
- DATE_ADD_HOURS(date, nb) : Ajouter des heures à une date
- DATE_ADD_MINUTES(date, nb) : Ajouter des minutes à une date
- DATE_ADD_SECONDS(date,nb) : Ajoute des secondes à une date
Autoriser la saisie manuelle
Cette option permet à l’utilisateur de remplacer le résultat de la formule calculée par une saisie manuelle. Il peut ainsi écraser le résultat par une valeur de son choix
Exemple de formule :
Calcul d’une surface :
Dans un premier temps, créez deux types de questions texte libre « Longueur » et « Surface » et les configurer en mode numérique entier par exemple.
Interface administrateur
Ajoutez une nouvelle question de type formule, ajoutez les deux variables « Longueur » et « Surface » en cliquant sur le bouton , ils seront nommés par défaut var1 et var2
Interface de sélection d’une variable à partir d’une question
Saisissez votre formule pour calculer la surface dans le champs de saisie de la formule : varA*varB
Vous pouvez ensuite saisir des valeurs de test de vos variable dans la colonne ‘Valeur de test’ du tableau des variables
Lors du clique sur le bouton (ou CTRL+ENTER) la formule est exécutée, vous pouvez ainsi tester la formule avec différentes valeurs
Rendu utilisateur
Concaténation de deux chaines avec un retour à la ligne :
Vous pouvez conserver les variables de l’exemple précédent, et saisir la formule suivante :
Affichage d’une non conformité sur une valeur est inférieure à 10:
Dans cet exemple on injecte les modifieurs [NC] et [COLOR] qui permettent respectivement de déclenché une non conformité sur le formulaire et d’afficher le résultat de la formule dans une couleur. Par défaut si on ne précise pas la couleur [NC] sera rouge et [C] vert
Interface utilisateur







