Ajout de règles à un formulaire adaptatif basé sur des composants principaux adaptive-forms-rule-editor

Cet article contient les dernières fonctionnalités de l’éditeur de règles des composants principaux de formulaires adaptatifs, à savoir les suivantes :

  • Prise en charge de l’implémentation de conditions imbriquées avec la fonctionnalité When-then-else
  • Validation ou réinitialisation des panneaux et des formulaires, y compris des champs
  • Prise en charge des fonctionnalités JavaScript modernes telles que les fonctions let et arrow (prise en charge d’ES10) dans les fonctions personnalisées

La fonctionnalité d’éditeur de règles permet aux utilisateurs et utilisatrices professionnels et aux développeurs et développeuses de formulaires de créer des règles sur des objets de formulaire adaptatif. Ces règles déterminent les actions à déclencher sur des objets de formulaire en fonction des conditions prédéfinies, des entrées utilisateur et des actions de l’utilisateur ou de l’utilisatrice sur le formulaire. Cela permet de rationaliser davantage l’expérience de remplissage du formulaire en assurant précision et vitesse.

L’éditeur de règles fournit une interface utilisateur intuitive et simplifiée pour la création de règles. L’éditeur de règles met un éditeur visuel à disposition de tous les utilisateurs. Vous pouvez effectuer différentes actions sur des objets de formulaire adaptatif utilisant des règles, comme les suivantes :

  • Afficher ou masquer un objet
  • Activer ou désactiver un objet
  • Définir une valeur pour un objet
  • Valider la valeur d’un objet
  • Exécuter les fonctions de calcul de la valeur d’un objet
  • appeler un service de modèle de données de formulaire (FDM) et exécuter une opération ;
  • définir la propriété d’un objet ;

Les utilisateurs et utilisatrices ajoutés au groupe forms-power-users peuvent créer des scripts et modifier les scripts existants. Les utilisateurs et utilisatrices appartenant au groupe forms-users group peuvent utiliser les scripts, mais ne peuvent ni en créer ni en modifier.

Présentation d’une règle understanding-a-rule

Une règle est une combinaison d’actions et de conditions. Dans l’éditeur de règles, les actions incluent des activités telles que masquer, afficher, activer, désactiver ou calculer la valeur d’un objet dans un formulaire. Les conditions sont des expressions booléennes qui sont évaluées en effectuant des vérifications et des opérations sur l’état, la valeur ou la propriété d’un objet de formulaire. Les actions sont exécutées en fonction de la valeur (True ou False) renvoyée par l’évaluation d’une condition.

L’éditeur de règles fournit un ensemble de types de règles prédéfinis, tels que Lorsque, Afficher, Masquer, Activer, Désactiver, Définir la valeur de et Valider pour vous aider à créer des règles. Chaque type de règle vous permet de définir des conditions et des actions dans une règle. Le document décrit de façon plus détaillée chaque type de règle.

Une règle suit généralement l’un des concepts suivants :

Condition-action Dans ce concept, une règle définit d’abord une condition suivie d’une action à déclencher. La construction est comparable à l’instruction if-then statement des langages de programmation.

Dans l’éditeur de règles, le type de règle Lorsque applique le concept de condition-action.

Action-condition Dans ce concept, une règle définit d’abord une action à déclencher suivie de conditions d’évaluation. Une autre variante de ce concept est une action alternative d’action-condition, qui définit également une action alternative à déclencher si la condition renvoie la valeur False.

Les types de règles Afficher, Masquer, Activer, Désactiver, Définir la valeur de et Valider de l’éditeur de règles appliquent la construction de règle action-condition. Par défaut, l’action alternative d’Afficher est Masquer et l’action alternative d’Activer est Désactiver, et inversement. Vous ne pouvez pas modifier l’action alternative par défaut.

NOTE
Les types de règles disponibles, y compris les conditions et actions que vous définissez dans l’éditeur de règles, dépendent également du type d’objet de formulaire sur lequel vous créez une règle. L’éditeur de règles affiche uniquement les types de règle et les options valides lors de la création des instructions de condition et d’action pour un type particulier d’objet de formulaire. Par exemple, vous ne voyez pas les types Valider et Définir la valeur de pour un objet de panneau.

Pour plus d’informations sur les types de règles disponibles dans l’éditeur de règles, reportez-vous à la section Types de règles disponibles dans l’éditeur de règles.

Recommandations pour la sélection d’un concept de règle guidelines-for-choosing-a-rule-construct

Même si vous pouvez obtenir la plupart des cas d’utilisation avec n’importe quel concept de règle, voici quelques recommandations pour sélectionner un concept plutôt qu’un autre. Pour plus d’informations sur les règles disponibles dans l’éditeur de règles, reportez-vous à la section Types de règles disponibles dans l’éditeur de règles.

  • Lors de la création d’une règle, réfléchissez d’abord au contexte de l’objet pour lequel vous la créez. Supposons que vous souhaitiez masquer ou afficher le champ B en fonction de la valeur spécifiée par un utilisateur ou une utilisatrice dans le champ A. Dans ce cas, vous évaluez une condition sur le champ A, et selon la valeur qu’elle renvoie, vous déclenchez une action sur le champ B.

    Par conséquent, si vous créez une règle pour le champ B (l’objet pour lequel vous évaluez une condition), utilisez la construction condition-action ou le type de règle When. De même, utilisez la construction action-condition ou le type de règle Show or Hide pour le champ A.

  • Parfois, vous devez effectuer plusieurs actions en fonction d’une condition. Dans ce cas, il est recommandé d’utiliser la construction condition-action. Dans ce concept, vous pouvez évaluer une condition une fois et spécifier plusieurs instructions d’action.

    Par exemple, pour masquer les champs B, C et D en fonction de la condition qui vérifie la valeur spécifiée par un utilisateur ou une utilisatrice dans le champ A, écrivez une règle avec le concept de condition-action ou le type de règle Lorsque dans le champ A et spécifiez les actions pour contrôler la visibilité des champs B, C et D. Dans le cas contraire, vous avez besoin de trois règles distinctes sur les champs B, C et D, où chaque règle vérifie la condition et affiche ou masque le champ correspondant. Dans cet exemple, il est plus efficace de créer le type de règle Lorsque sur un objet plutôt que le type de règle Afficher ou Masquer sur trois objets.

  • Pour déclencher une action selon plusieurs conditions, il est recommandé d’utiliser le concept d’action-condition. Par exemple, pour afficher et masquer le champ A en évaluant les conditions des champs B, C et D, utilisez le type de règle Afficher ou Masquer sur le champ A.

  • Utilisez le concept de condition-action ou d’action-condition si la règle contient une action pour une condition.

  • Si une règle vérifie une condition et exécute immédiatement une action en fournissant une valeur dans un champ ou en quittant un champ, il est recommandé de créer une règle avec le concept de condition-action ou le type de règle Lorsque sur le champ sur lequel la condition est évaluée.

  • La condition dans la règle Lorsque est évaluée lorsqu’un utilisateur modifie la valeur de l’objet pour lequel la règle Lorsque est appliquée. Cependant, si vous souhaitez déclencher l’action lorsque la valeur change du côté serveur, comme lorsque vous préremplissez la valeur, il est recommandé de créer une règle Lorsque qui déclenche l’action lors de l’initialisation du champ.

  • Lorsque vous créez des règles pour les menus déroulants, les boutons radio ou les cases à cocher, les options ou les valeurs de ces objets de formulaire sont préremplies dans l’éditeur de règles.

Types d’opérateur et événements disponibles dans l’éditeur de règles available-operator-types-and-events-in-rule-editor

L’éditeur de règles fournit les opérateurs logiques et les événements suivants à l’aide desquels vous pouvez créer des règles.

  • est égal à
  • n'est pas égal à
  • Commence par
  • Se termine par
  • Contient
  • Ne contient pas
  • Est vide
  • N’est pas vide
  • A sélectionné : renvoie la valeur True lorsque la personne sélectionne une option donnée pour une case à cocher, une liste déroulante ou un bouton radio.
  • Est initialisé (événement) : renvoie la valeur True si un objet de formulaire est généré dans le navigateur.
  • Est modifié (événement) : renvoie la valeur True si l’utilisateur modifie la valeur saisie ou l’option sélectionnée pour un objet de formulaire.

Types de règle disponibles dans l’éditeur de règles available-rule-types-in-rule-editor

L’éditeur de règles fournit un ensemble de types de règle prédéfinis que vous pouvez utiliser pour créer des règles. Examinons en détail chaque type de règle. Pour plus d’informations sur la création de règles dans l’éditeur de règles, reportez-vous à la section Création de règles.

Lorsque whenruletype

Le type de règle Lorsque suit le concept de règle d’action alternative de condition-action ou parfois simplement le concept de condition-action. Dans ce type de règle, vous spécifiez d’abord une condition à évaluer, puis une action à déclencher si la condition est remplie (True). Lors de l’utilisation du type de règle Lorsque, vous pouvez utiliser plusieurs opérateurs ET et OU afin de créer des expressions imbriquées.

Avec le type de règle Lorsque, vous pouvez évaluer une condition sur un objet de formulaire et exécuter des actions sur un ou plusieurs objets.

En clair, un type de règle Lorsque standard est structuré comme suit :

When on Object A:

(Condition 1 AND Condition 2 OR Condition 3) is TRUE;

Then, do the following:

Action 2 on Object B;
AND
Action 3 on Object C ;

Else, do the following:

Action 2 on Object C;
_

Lorsque vous avez un composant à valeurs multiples, comme des boutons radio ou une liste, les options sont récupérées automatiquement et mises à disposition du créateur de la règle lorsque vous créez une règle pour ce composant. Vous n’avez pas besoin de saisir à nouveau les valeurs de l’option.

Prenons l’exemple d’une liste comportant quatre options : rouge, bleu, vert et jaune. Lors de la création de la règle, les options (boutons radio) sont automatiquement récupérées et mises à la disposition du créateur ou de la créatrice de la règle comme suit :

Options d’affichage à valeurs multiples

Lorsque vous créez une règle Lorsque, vous pouvez déclencher l’action Effacer la valeur de. L’action Clear Value Of efface la valeur de l’objet spécifié. L’option Clear Value of dans l’instruction Lorsque permet de créer des conditions complexes comportant plusieurs champs. Vous pouvez ajouter l’instruction Else pour ajouter d’autres conditions.

Effacer la valeur de

NOTE
Le type de règle Lorsque ne prend en charge que les instructions then-else de niveau unique.

Plusieurs champs autorisés dans Lorsque allowed-multiple-fields

Dans la condition Lorsque, vous avez la possibilité d’ajouter d’autres champs à l’exception du champ auquel la règle est appliquée.

Par exemple, en utilisant le type de règle Lorsque, vous pouvez évaluer une condition sur différents objets de formulaire et effectuer l’action suivante :

When:

(Object A Condition 1)

AND/OR

(Object B Condtion 2)

Then, do the following:

Action 1 on Object A

_

Plusieurs champs autorisés dans Lorsque

Points à prendre en compte lors de l’utilisation de plusieurs champs autorisés dans la fonctionnalité de condition Lorsque

Si plusieurs champs autorisés de la fonctionnalité de condition Lorsque rencontrent des problèmes, suivez les étapes de dépannage comme suit :

  1. Ouvrez le formulaire en mode d’édition.
  2. Ouvrez l’explorateur de contenu, puis sélectionnez le composant Conteneur de guide de votre formulaire adaptatif.
  3. Cliquez sur l’icône des propriétés du conteneur de guide Propriétés du guide . La boîte de dialogue du conteneur de formulaires adaptatifs s’ouvre.
  4. Cliquez sur Terminé et enregistrez à nouveau la boîte de dialogue.

Masquer Masque l’objet spécifié.

Afficher Affiche l’objet spécifié.

Activer Active l’objet spécifié.

Désactiver Désactive l’objet spécifié.

Appel du service Appelle un service configuré dans un modèle de données de formulaire (FDM). Lorsque vous sélectionnez l’opération Appel du service, un champ s’affiche. Lorsque vous touchez le champ, il affiche tous les services configurés dans tous les modèles de données de formulaire de votre instance Experience Manager. Lorsque vous sélectionnez un service de modèle de données de formulaire, des champs supplémentaires s’affichent dans lesquels vous pouvez mapper des objets de formulaire à des paramètres d’entrée et de sortie pour le service spécifié. Reportez-vous à l’exemple de règle pour appeler des services de modèle de données de formulaire.

Outre le service de modèle de données de formulaire, vous pouvez spécifier une URL WSDL directe pour appeler un service Web. Cependant, un service de modèle de données de formulaire possède de nombreux avantages et l’approche recommandée permettant d’appeler un service.

Pour plus d’informations sur la configuration des services dans le modèle de données de formulaire, voir Experience Manager Forms Intégration de données.

Définir la valeur de Calcule et définit la valeur de l’objet spécifié. Vous pouvez définir cette valeur par une chaîne, la valeur d’un autre objet, la valeur calculée avec une expression ou une fonction mathématique, la valeur d’une propriété d’un objet ou la valeur de sortie d’un service de modèle de données de formulaire configuré. Lorsque vous sélectionnez l’option Service web, elle affiche tous les services configurés dans tous les modèles de données de formulaire de votre instance Experience Manager. Lorsque vous sélectionnez un service de modèle de données de formulaire, des champs supplémentaires s’affichent dans lesquels vous pouvez mapper des objets de formulaire à des paramètres d’entrée et de sortie pour le service spécifié.

Pour plus d’informations sur la configuration des services dans le modèle de données de formulaire, voir Experience Manager Forms Intégration de données.

Le type de règle Définir la propriété permet de définir la valeur d’une propriété de l’objet spécifié en fonction d’une action de condition. Vous pouvez définir la propriété sur l’une des options suivantes :

  • visible (booléen)
  • label.value (chaîne)
  • label.visible (booléen)
  • description (chaîne)
  • enabled (booléen)
  • readOnly (booléen)
  • required (booléen)
  • screenReaderText (chaîne)
  • valid (booléen)
  • errorMessage (chaîne)
  • default (nombre, chaîne, date)
  • enumNames (chaîne[])
  • chartType (chaîne)

Par exemple, cela vous permet de définir des règles pour afficher une zone de texte lorsqu’une personne clique sur un bouton. Pour définir une règle, vous pouvez utiliser une fonction personnalisée, un objet de formulaire, une propriété d’objet ou une sortie de service.

Définir la propriété

Pour définir une règle basée sur une fonction personnalisée, sélectionnez Sortie de fonction dans la liste déroulante, puis faites glisser et déposez une fonction personnalisée à partir de l’onglet Fonctions. Si l’action de condition est remplie, la zone de saisie de texte est visible.

Pour définir une règle basée sur un objet de formulaire, sélectionnez Objet de formulaire dans la liste déroulante, puis faites glisser et déposez un objet de formulaire à partir de l’onglet Objets de formulaire. Si l’action de condition est remplie, la zone de saisie de texte est visible dans le formulaire adaptatif.

Une règle Définir la propriété basée sur une propriété d’objet permet de rendre visible la zone de saisie de texte dans un formulaire adaptatif en fonction d’une autre propriété d’objet incluse dans le formulaire adaptatif.

La figure suivante illustre un exemple d’activation dynamique de la case à cocher en fonction du masquage ou de l’affichage de la zone de texte dans un formulaire adaptatif :

Propriété de l’objet

Effacer la valeur de  : efface la valeur de l’objet spécifié.

Définir la cible d’action: définit la cible d’action sur l’objet spécifié.

Envoyer le formulaire Envoie le formulaire.

Réinitialiser Réinitialise le formulaire ou l’objet spécifié.

Valider Valide le formulaire ou l’objet spécifié.

Ajouter une instance  : ajoute une instance de la ligne de panneau ou de tableau répétable spécifiée.

Supprimer une instance  : supprime une instance de la ligne de panneau ou de tableau répétable spécifiée.

Sortie de fonction Définit une règle basée sur des fonctions prédéfinies ou des fonctions personnalisées.

Accéder à Accède à d’autres formulaires adaptatifs, d’autres ressources, comme des images ou des fragments de document ou une URL externe.

Distribuer l’événement Déclenche des actions ou des comportements spécifiques en fonction de conditions ou d’événements prédéfinis.

Définir la valeur de set-value-of

Le type de règle Définir la valeur de permet de définir la valeur d’un objet de formulaire selon que la condition spécifiée est remplie ou non. La valeur peut être définie sur la valeur d’un autre objet, d’une chaîne littérale, la valeur dérivée d’une expression ou d’une fonction mathématique, la valeur d’une propriété d’un autre objet ou la sortie d’un service de modèle de données de formulaire. De même, vous pouvez vérifier la condition d’un composant, d’une chaîne, d’une propriété ou les valeurs dérivées d’une fonction ou d’une expression mathématique.

Notez que le type de règle Définir la valeur de n’est pas disponible pour tous les objets de formulaire, comme les boutons de panneaux et de barres d’outils. Une règle Définir la valeur de standard possède la structure suivante :

Définir la valeur d’Objet A sur :

(chaîne ABC) OU
(propriété d’objet X de l’objet C) OU
(valeur d’une fonction) OU
(valeur d’une expression mathématique) OU
(valeur de sortie d’un service de modèle de données) ;

Lorsque (facultatif) :

(Condition 1 ET Condition 2 ET Condition 3) est TRUE ;

L’exemple ci-après sélectionne la valeur de Question2 en tant que True et définit la valeur de Result en tant que correct.

Set-value-web-service

Exemple de règle Définir la valeur à l’aide du service de modèle de données de formulaire.

Afficher show

Le type de règle Afficher permet de créer une règle pour afficher ou masquer un objet de formulaire selon qu’une condition est remplie ou non. Le type de règle Afficher déclenche également l’action Masquer au cas où la condition ne serait pas remplie ou renverrait False.

Une règle standard Afficher est structurée comme suit :

Show Object A;

When:

(Condition 1 OR Condition 2 OR Condition 3) is TRUE;

Else:

Hide Object A;

Masquer hide

De la même manière que pour le type de règle Afficher, vous pouvez utiliser le type de règle Masquer pour afficher ou masquer un objet de formulaire selon qu’une condition est remplie ou non. Le type de règle Masquer déclenche également l’action Afficher au cas où la condition ne serait pas remplie ou renverrait False.

Une règle standard Masquer est structurée comme suit :

Hide Object A;

When:

(Condition 1 AND Condition 2 AND Condition 3) is TRUE;

Else:

Show Object A;

Activer enable

Le type de règle Activer permet d’activer ou de désactiver un objet de formulaire selon qu’une condition est remplie ou non. Le type de règle Activer déclenche également l’action Désactiver au cas où la condition ne serait pas remplie ou renverrait False.

Une règle Activer standard est structurée comme suit :

Enable Object A;

When:

(Condition 1 AND Condition 2 AND Condition 3) is TRUE;

Else:

Disable Object A;

Désactiver disable

De la même manière que le type de règle Activer, le type de règle Désactiver permet d’activer ou de désactiver un objet de formulaire selon qu’une condition est remplie ou non. Le type de règle Désactiver déclenche également l’action Activer au cas où la condition ne serait pas remplie ou renverrait False.

Une règle Désactiver standard est structurée comme suit :

Disable Object A;

When:

(Condition 1 OR Condition 2 OR Condition 3) is TRUE;

Else:

Enable Object A;

Valider validate

Le type de règle Valider valide la valeur d’un champ à l’aide d’une expression. Par exemple, vous pouvez créer une expression pour vérifier que le champ de texte qui indique un nom ne contient pas de caractères spéciaux ni de nombres.

Une règle Valider standard est structurée comme suit :

Validate Object A;

Using:

(Expression 1 AND Expression 2 AND Expression 3) is TRUE;

NOTE
Si la valeur spécifiée n’est pas conforme à la règle Valider, vous pouvez afficher un message de validation à l’utilisateur ou utilisatrice. Vous pouvez spécifier le message dans le champ Message de validation du script dans les propriétés de composant dans la barre latérale.

Script-validation

Présentation de l’interface utilisateur de l’éditeur de règles understanding-the-rule-editor-user-interface

L’éditeur de règles offre une interface utilisateur exhaustive et néanmoins simple, qui permet de créer et de gérer des règles. Vous pouvez lancer l’interface utilisateur de l’éditeur de règles à partir d’un formulaire adaptatif en mode Création.

Pour lancer l’interface utilisateur de l’éditeur de règles :

  1. Ouvrez un formulaire adaptatif en mode Création.

  2. Sélectionnez l’objet de formulaire pour lequel vous voulez créer une règle, puis edit-rules de la barre d’outils Composant. L’interface utilisateur de l’éditeur de règles s’affiche.

    create-rules

    Toutes les règles existantes pour les objets de formulaire sélectionnés sont répertoriées dans cet écran. Pour plus d’informations sur la gestion des règles existantes, voir Gestion des règles.

  3. Sélectionnez Créer pour créer une règle. L’éditeur visuel de l’interface utilisateur de l’éditeur de règles s’affiche par défaut la première fois que vous lancez l’éditeur de règles.

    Interface utilisateur de l’éditeur de règles

Examinons en détail chaque composant de l’interface utilisateur de l’éditeur de règles.

A. Affichage composant-règle a-component-rule-display

Affiche le titre de l’objet de formulaire adaptatif à partir duquel vous avez lancé l’éditeur de règles et le type de règle actuellement sélectionné. Dans l’exemple ci-dessus, l’éditeur de règles est lancé à partir de l’objet de formulaire adaptatif intitulé Question 1 et le type de règle sélectionné est Lorsque.

B. Objets de formulaire et fonctions b-form-objects-and-functions-br

Le volet situé à gauche de l’interface utilisateur de l’éditeur de règles comporte deux onglets: Objets de formulaire et Fonctions.

L’onglet Objets de formulaire affiche une arborescence de tous les objets contenus dans le formulaire adaptatif. Il affiche le titre et le type des objets. Lors de la création d’une règle, vous pouvez faire glisser-déposer les objets de formulaire dans l’éditeur de règles. Lorsque vous créez ou modifiez une règle en faisant glisser et en déposant un objet ou une fonction dans un espace réservé, cet espace prend automatiquement le type de valeur approprié.

Les objets de formulaire contenant une ou plusieurs règles valides appliquées sont désignés par un point vert. Si l’une des règles appliquées à un objet de formulaire n’est pas valide, l’objet de formulaire est désigné par un point jaune.

L’onglet Fonctions comporte un jeu de fonctions intégrées, comme Somme de, Minimum de, Maximum de, Moyenne de, Nombre de et Valider le formulaire. Vous pouvez utiliser ces fonctions pour calculer des valeurs dans les panneaux et les lignes de tableau répétables et pour les instructions d’action et de condition lors de la création de règles. Cependant, vous pouvez également créer des fonctions personnalisées.

Certaines fonctions de la liste sont affichées dans la figure :

L’onglet Fonctions

NOTE
Vous pouvez effectuer une recherche de texte dans les noms et titres des objets et des fonctions à partir des onglets Objets de formulaire et Fonctions.

Dans l’arborescence de gauche des objets de formulaire, vous pouvez sélectionner les objets de formulaire pour afficher les règles appliquées à chacun des objets. Vous pouvez non seulement parcourir les règles des différents objets de formulaire mais également copier-coller des règles entre les objets du formulaire. Pour plus d’informations, reportez-vous à la section Règles de copier-coller.

C. Basculement entre les objets de formulaire et les fonctions c-form-objects-and-functions-toggle-br

Le bouton Basculer, lorsqu’il est sélectionné, permet de basculer entre le volet des objets de formulaire et celui des fonctions.

D. Éditeur de règles visuel visual-rule-editor

Lorsque l’interface utilisateur de l’éditeur de règles est en mode éditeur visuel, l’éditeur de règles visuel est la zone dans laquelle vous créez des règles. Il vous permet de sélectionner un type de règle et de définir en conséquence des conditions et des actions. Lors de la définition des conditions et des actions dans une règle, vous pouvez glisser-déposer des objets de formulaire et des fonctions depuis le volet Objets de formulaire et Fonctions.

Pour plus d’informations sur l’utilisation de l’éditeur de règles visuel, voir Création de règles.

E. Boutons Terminé et Annuler done-and-cancel-buttons

Le bouton Terminé permet d’enregistrer une règle. Vous pouvez enregistrer une règle incomplète. Toutefois, les règles incomplètes ne sont pas valides et ne s’exécutent pas. Les règles enregistrées sur un objet de formulaire sont répertoriées lorsque vous lancez l’éditeur de règles la prochaine fois à partir du même objet de formulaire. Vous pouvez gérer des règles existantes dans cette vue. Pour plus d’informations, consultez la section Gérer les règles.

Le bouton Annuler annule tous les changements apportés à une règle et ferme l’éditeur de règles.

Règles d’écriture write-rules

Vous pouvez écrire des règles à l’aide de l’éditeur de règles visuel .

Tout d'abord, examinons l’écriture de règles utilisant l’éditeur visuel.

À l’aide de l’éditeur visuel using-visual-editor

Examinons comment créer une règle dans l’éditeur visuel en utilisant l’exemple de formulaire suivant.

Create-rule-example

La section Conditions de prêt dans l’exemple de formulaire de demande de prêt requiert des demandeurs et demandeuses de spécifier leur état civil, leur salaire et, si ils ou elles sont marié(e)s, le salaire de leur conjoint(e). D’après les entrées de l’utilisateur ou utilisatrice, la règle permet de calculer le montant d’éligibilité du prêt et l’affiche dans le champ Éligibilité de prêt. Appliquez les règles suivantes pour mettre en œuvre le scénario :

  • Le champ Salaire de l’époux ou de l’épouse s’affiche uniquement lorsque la valeur État civil est Marié ou Mariée.
  • Le montant d’éligibilité de prêt représente 50 % du salaire total.

Pour créer des règles :

  1. Tout d’abord, créez la règle pour contrôler la visibilité du champ Salaire du conjoint en fonction de l’option de l’utilisateur pour le bouton radio État civil.

    Ouvrez le formulaire de demande de prêt en mode Création. Sélectionnez le composant État civil et choisissez edit-rules . Ensuite, sélectionnez Créer pour lancer l’éditeur de règles.

    write-rules-visual-editor-1

    Lorsque vous lancez l’éditeur de règles, la règle Lorsque est sélectionnée par défaut. En outre, l’objet de formulaire (dans ce cas, État civil) d’où vous avez lancé l’éditeur de règles est spécifié dans l’instruction Lorsque.

    Bien que vous ne puissiez pas changer ou modifier l’objet sélectionné, vous pouvez utiliser la liste déroulante de règles, comme indiqué ci-dessous, pour sélectionner un autre type de règle. Si vous souhaitez créer une règle sur un autre objet, sélectionnez Annuler pour quitter l’éditeur de règles et relancez-le depuis l’objet de formulaire de votre choix.

  2. Sélectionnez le menu déroulant Sélectionner l’état et choisissez est égal à. Le champ Saisissez une chaîne s’affiche.

    write-rules-visual-editor-2

  3. Dans le champ Saisir une chaîne de la règle, sélectionnez Marié ou mariée dans le menu déroulant.

    write-rules-visual-editor-4

    Vous avez défini la condition comme When Marital Status is equal to Married. Définissez ensuite l’action à effectuer si cette condition est True.

  4. Dans l’instruction Alors, sélectionnez Afficher dans le menu déroulant Sélectionner une action.

    write-rules-visual-editor-5

  5. Faites glisser et déposez le champ Salaire du conjoint de l’onglet Objets de formulaire vers le champ Déposez l’objet ou sélectionnez ici. Vous pouvez également sélectionner le champ Déposer l’objet ou sélectionner ici, puis le champ Salaire du conjoint ou de la conjointe dans le menu contextuel, qui répertorie tous les objets de formulaire dans le formulaire.

    write-rules-visual-editor-6

    Définissez ensuite l’action à effectuer si cette condition est False.

  6. Cliquez sur Ajouter une section Else pour ajouter une autre condition pour le champ Salaire du conjoint ou de la conjointe, au cas où vous sélectionneriez célibataire pour État civil.

    when-else

  7. Dans l’instruction Else, choisissez Masquer dans le menu déroulant Sélectionner l’action.
    when-else

  8. Faites glisser et déposez le champ Salaire du conjoint ou de la conjointe de l’onglet Objets de formulaire vers le champ Déposez l’objet ou sélectionnez ici. Vous pouvez également sélectionner le champ Déposer l’objet ou sélectionner ici, puis le champ Salaire du conjoint ou de la conjointe dans le menu contextuel, qui répertorie tous les objets de formulaire dans le formulaire.
    when-else

    La règle s’affiche comme suit dans l’éditeur de règles.

    write-rules-visual-editor-7

  9. Cliquez sur Terminé pour enregistrer la règle.

NOTE
Vous pouvez également créer une règle Afficher dans le champ Salaire du conjoint ou de la conjointe, au lieu de deux règles Lorsque dans le champ État civil pour mettre en œuvre le même comportement.

write-rules-visual-editor-9

  1. Ensuite, créez une règle pour calculer le niveau d’éligibilité de prêt, à hauteur de 50 % du salaire total, puis affichez-la dans le champ Éligibilité de prêt. À cet effet, créez des règles Définir la valeur de sur le champ Éligibilité de prêt.

    En mode Création, sélectionnez le champ Éligibilité de prêt, puis edit-rules . Ensuite, sélectionnez Créer pour lancer l’éditeur de règles.

  2. Sélectionnez la règle Définir la valeur de dans la liste déroulante des règles.

    write-rules-visual-editor-10

  3. Choisissez Sélectionner l’option et sélectionnez Expression mathématique. Un champ permettant de saisir l’expression mathématique s’ouvre.

    write-rules-visual-editor-11

  4. Dans le champ d'expression :

    • Sélectionnez ou faites glisser et déposez le champ Salaire, de l’onglet Objet de formulaire vers le premier champ Déposez l’objet ou sélectionnez ici.

    • Sélectionnez Plus dans le champ Sélectionner un opérateur.

    • Sélectionnez ou faites glisser et déposez depuis le champ Salaire du conjoint de l’onglet Objets de formulaire vers l’autre champ Déposez l’objet ou sélectionnez ici.

    write-rules-visual-editor-12

  5. Ensuite, sélectionnez la zone en surbrillance autour du champ Expression et choisissez Étendre l’expression.

    write-rules-visual-editor-13

    Dans le champ d’expression étendue, sélectionnez divisé par dans le champ Sélectionner un opérateur et Nombre dans le champ Sélectionner une option. Ensuite, spécifiez 2 dans le champ Nombre.

    write-rules-visual-editor-14

    note note
    NOTE
    Vous pouvez créer des expressions complexes à l’aide de composants, fonctions, expressions mathématiques et valeurs de propriété dans le champ Sélectionner une option.

    Créez ensuite une condition qui, lorsqu’elle renvoie True, permet que l’expression s’exécute.

  6. Sélectionnez Ajouter une condition pour ajouter une instruction Lorsque.

    write-rules-visual-editor-15

    Dans l’instruction Lorsque :

    • Sélectionnez ou glissez-déposez depuis l’onglet Objets de formulaire le champ État civil dans le premier champ Déposez l’objet ou sélectionnez ici.

    • Sélectionnez est égal à dans le champ Sélectionner un opérateur.

    • Sélectionnez Chaîne dans l’autre champ Déposez l’objet ou sélectionnez ici et spécifiez Marié(e) dans le champ Saisissez la chaîne.

    Enfin, la règle s’affiche comme suit dans l’éditeur de règles. write-rules-visual-editor-16

  7. Sélectionnez Terminé. La règle est enregistrée.

  8. Répétez les étapes 7 à 14 pour définir une autre règle pour calculer le montant d’éligibilité si la valeur d’état civil est Célibataire. La règle s’affiche comme suit dans l’éditeur de règles.

    write-rules-visual-editor-17

Vous pouvez également utiliser la règle Définir la valeur de pour calculer l’éligibilité de prêt dans la règle Lorsque que vous avez créée pour afficher ou masquer le champ Salaire du conjoint. La règle combinée résultante, lorsque l’état civil est Célibataire, s’affiche comme suit dans l’éditeur de règles.

write-rules-visual-editor-18

De même, vous pouvez écrire une règle combinée pour contrôler la visibilité du champ Salaire du conjoint ou de la conjointe lorsque la valeur d’état civil est Marié ou mariée à l’aide de la condition Else.

write-rules-visual-editor-19

Fonctions personnalisées dans l’éditeur de règles custom-functions

Outre les fonctions prêtes à l’emploi, comme Somme de, qui sont répertoriées sous Sortie de fonction, vous pouvez également utiliser des fonctions personnalisées dans l’éditeur de règles L’éditeur de règles prend en charge la syntaxe JavaScript ECMASScript 2019 pour les scripts et les fonctions personnalisées. Pour plus d’informations sur la création de fonctions personnalisées, consultez l’article Fonctions personnalisées dans les formulaires adaptatifs.

Gestion des règles manage-rules

Les règles existantes sur un objet de formulaire sont répertoriées lorsque vous sélectionnez l’objet et edit-rules1 . Vous pouvez afficher le titre et un aperçu du résumé de la règle. En outre, l’interface utilisateur vous permet de développer et d’afficher le résumé complet d’une règle, de changer l’ordre des règles, de les modifier et de les supprimer.

Liste-rules

Vous pouvez effectuer les actions suivantes sur les règles :

  • Développer/Réduire  : la colonne Contenu dans la liste des règles affiche le contenu des règles. Si le contenu entier des règles n’est pas visible dans l’affichage par défaut, sélectionnez expand-rule-content pour le développer.

  • Réorganiser  : toute nouvelle règle que vous créez est empilée au bas de la liste des règles. Les règles sont exécutées de haut en bas. La règle en haut s’exécute en premier, suivie des autres règles du même type. Par exemple, si vous avez les règles Lorsque, Afficher, Activer et Lorsque en première, deuxième, troisième et quatrième positions depuis le haut respectivement, la règle Lorsque du haut est exécutée en premier, suivie de la règle Lorsque à la quatrième position. Ensuite, les règles Afficher et Activer seront exécutées.
    Vous pouvez modifier l’ordre d’une règle en appuyant sur sort-rules en regard ou la faire glisser et la déposer dans l’ordre souhaité dans la liste.

  • Modifier  : pour modifier une règle, cochez la case située en regard du titre de la règle. Les options de modification et de suppression de la règle s’affichent. Sélectionnez Modifier pour afficher la règle sélectionnée dans l’éditeur de règles .

  • Supprimer  : pour supprimer une règle, sélectionnez-la puis choisissez Supprimer.

  • Activer/désactiver  : lorsque vous devez suspendre temporairement l’utilisation d’une règle, vous pouvez sélectionner une ou plusieurs règles et appuyer sur Désactiver dans la barre d’outils Actions pour les désactiver. Si une règle est désactivée, elle ne s’exécute pas lors de l’exécution. Pour activer une règle désactivée, vous pouvez la sélectionner puis choisir Activer dans la barre d’outils Actions. La colonne de statut de la règle indique si la règle est activée ou désactivée.

Désactiver la règle

Règles de copier-coller copy-paste-rules

Vous pouvez copier-coller une règle d’un champ à d’autres champs similaires pour gagner du temps.

Pour copier-coller des règles, procédez comme suit :

  1. Sélectionnez l’objet de formulaire à partir duquel vous souhaitez copier une règle puis, dans la barre d’outils des composants, sélectionnez edit-rules . L’interface utilisateur de l’éditeur de règles s’affiche avec l’objet de formulaire sélectionné, et les règles existantes s’affichent.

    copy rule

    Pour plus d’informations sur la gestion des règles existantes, voir Gestion des règles.

  2. Cochez la case en regard du titre de la règle pour afficher les options de gestion de la règle. Sélectionnez Copie.

    copyrule2

  3. Sélectionnez un autre objet de formulaire dans lequel vous souhaitez coller la règle et choisissez Coller. De plus, vous pouvez modifier la règle pour y apporter des modifications.

    note note
    NOTE
    Vous pouvez coller une règle dans un autre objet de formulaire uniquement si cet objet de formulaire prend en charge les événement de la règle copiée. Par exemple, un bouton prend en charge l’événement Cliquer. Vous pouvez coller une règle avec un événement Cliquer sur un bouton mais pas dans une case à cocher.
  4. Sélectionnez Terminé pour enregistrer la règle.

Expressions imbriquées nestedexpressions

L’éditeur de règles vous permet d’utiliser plusieurs opérateurs ET et OU afin de créer des règles imbriquées. Vous pouvez fusionner plusieurs opérateurs ET et OU dans les règles.

Voici un exemple de règle imbriquée qui affiche un message concernant l’éligibilité pour un droit de garde lorsque les conditions nécessaires sont remplies à l’intention de l’utilisateur.

Expression complexe

Vous pouvez également faire glisser et déposer des conditions dans une règle pour la modifier. Appuyez et passez le curseur sur la poignée ( handle ) avant une condition. Une fois le pointeur affiché sous forme de main comme illustré ci-dessous, faites glisser la condition et déposez-la n’importe où dans la règle. La structure de la règle change.

Glisser-déposer

Conditions d’expression de date dateexpression

L’éditeur de règles vous permet d’utiliser des comparaisons de dates afin de créer des conditions.

Voici un exemple de condition qui contient un objet de texte statique si le prêt hypothécaire sur la maison est déjà utilisé, ce que l’utilisateur ou l’utilisatrice indique en remplissant le champ de date.

Lorsque la date du prêt hypothécaire de la propriété indiquée par l’utilisateur est déjà dépassée, le formulaire adaptatif affiche une remarque concernant le calcul des revenus. La règle ci-dessous compare la date indiquée par l’utilisateur à la date actuelle et si la date indiquée par l’utilisateur est antérieure à la date actuelle, le formulaire affiche le message texte (appelé « Revenu »).

Condition d’expression de date

Lorsque la date remplie est antérieure à la date actuelle, le formulaire affiche le message texte (Revenu), comme suit :

Condition d’expression de date remplie

Conditions de comparaison des nombres number-comparison-conditions

L’éditeur de règles vous permet de créer des conditions qui comparent deux nombres.

Voici un exemple de condition, qui contient un objet de texte statique si le demandeur habite à l’adresse actuelle depuis moins de 36 mois.

Condition de comparaison des nombres

Lorsque l’utilisateur indique qu’il habite à l’adresse résidentielle actuelle depuis moins de 36 mois, le formulaire affiche une notification indiquant qu’un justificatif de domicile supplémentaire peut être demandé.

Plus de justificatif demandé

Exemples de règles example

Appeler service de modèle de données de formulaire invoke

Imaginons un service web GetInterestRates prenant le montant du prêt, la durée et la cote de solvabilité du demandeur ou de la demandeuse comme valeurs d’entrée et renvoyant un plan de prêt incluant le montant des mensualités et le taux d’intérêt. Vous créez un modèle de données de formulaire à l’aide du service web comme source de données. Vous ajoutez des objets de modèle de données et un service get au modèle de formulaire. Le service s’affiche sur l’onglet Services du modèle de données de formulaire. Ensuite, créez un formulaire adaptatif incluant des champs des objets de modèle de données pour capturer les données saisies par l’utilisateur pour le montant et la durée du prêt et la cote de solvabilité. Ajoutez un bouton qui demande au service Web d’extraire les détails du plan. La sortie est renseignée dans les champs appropriés.

La règle ci-dessous indique comment configurer l’action Appel du service pour accomplir l’exemple de scénario.

Exemple-invoke-services

NOTE
Si l’entrée est de type tableau, les champs qui prennent en charge les tableaux sont visibles dans la section déroulante Sortie.

Déclenchement de plusieurs actions à l’aide de la règle Lorsque triggering-multiple-actions-using-the-when-rule

Dans un formulaire de demande de prêt, vous voulez savoir si la personne demandant le prêt est un client ou une cliente existante ou non. En fonction des informations fournies par l’utilisateur ou l’utilisatrice, le champ ID du client ou de la cliente doit s’afficher ou se masquer. En outre, vous souhaitez placer le focus sur le champ d’ID de client ou cliente si l’utilisateur ou l’utilisatrice est un client ou une cliente existant. Le formulaire de demande de prêt est composé des éléments suivants :

  • Un bouton radio,Êtes-vous déjà client(e) chez Geometrixx ?, qui propose les options Oui et Non. La valeur Oui est 0  ; la valeur Non est 1.

  • Un champ de texte, ID de client Geometrixx, pour indiquer l’ID du client/de la cliente.

Lorsque vous entrez une règle Lorsque sur le bouton radio pour implémenter ce comportement, la règle s’affiche comme suit dans l’éditeur de règles visuel.

When-rule-example

Règle dans l’éditeur visuel

Dans l’exemple de règle, l’instruction suivante dans la section Lorsque est la condition qui, si elle renvoie True, exécute les actions spécifiées dans la section Alors.

Utilisation d’une sortie de fonction dans une règle using-a-function-output-in-a-rule

Dans un formulaire de bon de commande, le tableau ci-dessous permet aux utilisateurs de saisir leurs commandes. Dans le tableau ci-dessous :

  • La première ligne est répétable, de sorte que les utilisateurs et utilisatrices puissent commander plusieurs produits et spécifier différentes quantités. Son nom d’élément est Row1.
  • Le titre de la cellule dans la colonne Quantité de produit de la ligne répétable est Quantité. Le nom de l’élément pour cette cellule est productquantity.
  • La deuxième ligne du tableau est non répétable, et le titre de la cellule dans la colonne Quantité de produit sur cette ligne est Quantité totale.

Example-function-table

A. Ligne 1 B. Quantité C. Quantité totale

Maintenant, vous souhaitez ajouter des quantités spécifiées dans la colonne Quantité de produit pour tous les produits et afficher la somme dans la cellule Quantité totale. Vous pouvez obtenir ce résultat en saisissant une règle Définir la valeur de dans la cellule Quantité totale, comme indiqué ci-dessous.

Example-function-output

Règle dans l’éditeur visuel

Validation d’une valeur de champ à l’aide d’une expression validating-a-field-value-using-expression

Dans le formulaire de bon de commande décrit dans l’exemple précédent, vous souhaitez empêcher l’utilisateur de commander plus d’une quantité d’un produit dont le prix est supérieur à 10 000. À cet effet, vous pouvez créer une règle Valider, comme indiqué ci-dessous.

Example-validate
Règle dans l’éditeur visuel

recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2