# Règles métier

Les règles métier permettent de configurer le fonctionnement des formulaires en fonction des vraies règles qui s’appliquent à votre métier.

Ainsi au travers des règles, il est possible de

  • de faire des vérifications sur le formulaire,
  • de calculer certains champs,
  • ou encore d’envoyer des informations ou de les afficher à l’utilisateur à certains moments.

Les règles sont déclenchées après l’enregistrement des modifications du formulaire apportées par l’utilisateur. Se référer au paragraphe suivant Configuration des règles métier pour un formulaire pour plus de détail sur le fonctionnement.

Pour les formulaires avec cycle de vie, en plus des règles métier vérifiées lors de l’enregistrement, il est possible de configurer des règles métiers exécutées lors de l’arrivée à une étape donnée ou des Instructions programmées exécutées au bout d’un certain temps après l’arrivée à une étape, se référer au chapitre Règles métier pour le cycle de vie pour plus de détail sur le fonctionnement.

Dans ce chapitre vous allez comprendre

# Configuration des règles métier pour un formulaire

La configuration des règles métier pour un formulaire est faite depuis la page de configuration générale du formulaire, au travers du bouton menu Règles métier.

# Interface

L’interface de paramétrage des règles métier est séparée en 3 parties :

inst-change-value.png

  • Le volet de droite:
    • présente une aide contextualisée en fonction de la pièce sélectionnée.

# Définitions et représentation graphique des règles métier

Les règles métier sont configurées par l’intermédiaire d’instructions, de pièces logiques et de pièces typées.

L’ensemble de ces éléments sont des pièces que vous pouvez déplacer et positionner à votre gré dans la zone centrale.

Afin de distinguer les pièces en fonction de leur type, les types de pièces ont une représentation différente.

# Les pièces instructions

Les instructions sont des pièces permettant d’effectuer une action. Elles sont représentées par une forme rectangulaire

inst-change-valeur.png

Les instructions sont composées de cellules, éléments à bords arrondis dans lesquels peuvent être positionnés des pièces typées

Les instructions peuvent être exécutées les unes à la suite des autres. Elles peuvent donc être positionnées les unes au-dessus des autres, comme dans l’exemple ci-après.

inst-change-valeur.png

# Les pièces logiques

Les pièces logiques sont des pièces permettant de retourner une valeur booléenne, soit vrai ou faux.

inst-change-value.png

Ces pièces logiques sont représentées par une pièce de forme hexagonale et peuvent s’imbriquer dans des pièces logiques avec une cellule de la même forme.

# Les pièces typées

Les pièces typées permettent de retourner une valeur d’un type donné. Les pièces typées sont représentées par des pièces aux bords arrondis.

inst-change-value.png

Afin de différentier les pièces de type différent, les pièces ont une couleur en fonction du type retourné

inst-change-value.png

La valeur peut être statique ou calculée en fonction de la valeur d’un champ du formulaire.

inst-change-value.png

Ces pièces peuvent être déposées dans les cellules, des instructions ou des pièces logiques contenant une cellule de la même forme, aux bords arrondis.

D'autres pièces typées, aves des couleurs différentes, permettent d'utiliser les lignes de tableaux ou encore les listes

inst-change-value.png

# Les pièces variables locales et paramètres du formulaire

Certaines pièces particulières, non typées, permettent de manipuler des données temporaires ou variables dans les règles métier, comme les

  • variables locales qui permettent d'enregistrer une donnée de manière temporaire ou pour itérer sur une boucle ou un tableau,
  • ou les paramètres du formulaire qui permettent d'enregistrer des données persistantes, partagées entre les formulaires d'une même catégorie.

Le type retourné par ces pièces dépend du type de la valeur enregistrée précédemment.

inst-change-value.png

# Les listes

Une liste est un type de pièce, représentant une liste ordonnée d'éléments, utilisé dans les règles métier.

Plusieurs champs du formulaire peuvent être utilisés en tant que listes, les colonnes des tableaux du formulaire et l'ensemble des champs multiples du formulaire, comme les Listes de liens vers des formulaires ou les Listes de comptes utilisateurs

Les variables locales peuvent être aussi utilisées pour itérer sur les lignes d’un tableau (« Pour chaque ligne ») et peuvent s'avérer aussi utiles lorsque vous mettez à jour des champs multiples de votre formulaire par exemple.

Vous pouvez vous référer à l'exemple d'utilisation des variables locales pour modifier les champs multiples au travers des règles métier.

inst-change-value.png

# Fonctionnement des règles métier

Lors de l’enregistrement d’un formulaire, des instructions issues des règles métier peuvent être exécutées :

Les instructions déposées dans la liste d’instructions Instructions à exécuter lors de l’enregistrement sont appelées automatiquement une fois l’enregistrement demandé par l’utilisateur.

Ces instructions sont appelées une fois les données enregistrées dans le formulaire. Ces instructions permettent de vérifier certaines conditions avant d’éventuellement annuler la modification et permettent aussi de modifier automatiquement certaines valeurs des champs.

inst-change-value.png

Dans cette pièce de liste d’instructions, des pièces instructions peuvent être imbriquées, les unes au-dessus des autres.

  • Le traitement des instructions est fait dans l’ordre d’agencement des instructions dans l’instruction générale.

Les pièces instructions sont configurables avec des pièces logiques et des valeurs -fixes ou à partir du champ du formulaire- obtenues grâce aux pièces typées et fonctions champs.

inst-change-value.png

Attention aux types

Une attention particulière doit être portée aux types des valeurs renvoyés par les pièces typées et utilisés dans les autres éléments.

Les pièces typées, pièces logiques et instructions ont des types acceptés.

Une pièce d’un type non accepté ne pourra pas être configurée avec ce type.

Certaines pièces ou instructions itératives peuvent être utilisées pour faire des boucles ou itérer sur les lignes d'un tableau par exemple. Des variables locales peuvent être utilisées pour manipuler les données dans ces instructions.

Dans certains cas, il peut être utile d'avoir des champs ou des données partagées entre les formulaires. Les paramètres du formulaire permettent de manipuler des variables partagées entre les formulaires.

# Les instructions, opérations et pièces typées des règles métier

Les différentes pièces, Instructions, opérations et pièces typées, ont des caractéristiques et comportements différents, en fonction du type et de la pièce. Les particularités sont présentées dans les chapitres relatifs à chacune des pièces :