Composition des règles métier
Ce sont les règles « métier » qui déterminent le comportement du simulateur. Elles se déclenchent lorsque le contexte change.
Un changement de contexte se traduit toujours par l'acquisition ou la modification d'une donnée.
G6k s'informe du changement de contexte en revérifiant les conditions associées aux règles lorsque la valeur d'une donnée change.
Ainsi lorsque l'utilisateur saisit une valeur, que g6K accède à une donnée de référence ou qu'une valeur est calculée, les règles impactées sont évaluées et les actions associées sont exécutées le cas échéant.
Les actions qui peuvent être réalisées sont :
Une règle métier a la syntaxe suivante :
<règle métier> : Lorsque ...<condition>[alors ...<action>...<action>][sinon ...<action> ... <action>]
<condition>
<condition> : <condition simple> | <condition composée> <condition simple> : <opérande><opérateur>[(<valeur> | <expression>)] <condition composée> : <connecteur> <condition> ... <condition>
<opérateur>
<opérateur> : contient | correspond à | est antérieure à | est égal à | est faux | est inférieur à | est inférieur ou égal à | est postérieure à | est renseigné | est supérieur à | est supérieur ou égal à | est vrai | ne contient pas | ne correspond pas à | n'est pas antérieure à | n'est pas égal à | n'est pas postérieure à | n'est pas renseigné
<connecteur>
<connecteur> : toutes | au moins une | aucune
<action>
<action> : (afficher l'erreur | afficher l'avertissement)<message>portant surla donnée<donnée> ou <action> : (afficher l'erreur | afficher l'avertissement)<message>portant surl'ensemble des données ou <action> : (afficher l'erreur | afficher l'avertissement)<message>portant surle groupe de données<groupe de données> ou <action> : (Cacher | Montrer) l'étape<étape> ou <action> : (Cacher | Montrer) le panneau de l'étape<étape>dont le libellé est<panneau> ou <action> : (Cacher | Montrer) le groupe de champs de l'étape<étape>du panneau<panneau>dont le libellé est<groupe de champs> ou <action> : (Cacher | Montrer) le champ de l'étape<étape>du panneau<panneau>du groupe de champs<groupe de champs>dont le libellé est<champ> ou <action> : (Cacher | Montrer) la colonne de l'étape<étape>du panneau<panneau>du groupe de champs<groupe de champs>dont le libellé est<colonne> ou <action> : (Cacher | Montrer) la rangée de l'étape<étape>du panneau<panneau>du groupe de champs<groupe de champs>dont le libellé est<rangée> ou <action> : (Cacher | Montrer) le bloc d'infos de l'étape<étape>du panneau<panneau>dont le libellé est<bloc d'infos> ou <action> : (Cacher | Montrer) le chapitre de l'étape<étape>du panneau<panneau>du bloc d'infos<bloc d'infos>dont le libellé est<chapitre> ou <action> : (Cacher | Montrer) la section de l'étape<étape>du panneau<panneau>du bloc d'infos<bloc d'infos>du chapitre<chapitre>dont le libellé est<section> ou <action> : (Cacher | Montrer) le bouton d'action de l'étape<étape>dont le libellé est<bouton d'action> ou <action> : (Cacher | Montrer) la note de bas de page de l'étape<étape>dont le libellé est<note de bas de page> ou <action> : (Cacher | Montrer) le choix de la donnée<donnée>dont le libellé est<choix>
Evaluer une règle consiste à évaluer la condition qui la compose. Le résultat de l'évaluation a trois états : « vrai », « faux » ou « indéterminé ».
Si l'état est « vrai » alors les actions alors ... sont exécutées.
Si l'état est « faux » alors les actions sinon ... sont exécutées.
Si l'état est « indéterminé » alors aucune action n'est exécutée.
L'évaluation renvoie « indéterminé », si au moins une des opérandes ne contient aucune valeur.
L'interface de G6K permettant de saisir ou modifier une règle est la suivante :
Pour y accéder, cliquez sur le bouton « Simulateurs » de la barre de menu :
Puis sélectionnez le simulateur dans le menu latéral gauche.
Pour saisir une nouvelle règle, cliquez sur le bouton « Ajouter » du panneau « Règles métier » :
Pour modifier une règle, dépliez le panneau « Règles métier » puis cliquez sur le bouton « Modifier » de la barre de titre de la règle que vous souhaitez modifier :
Le formulaire de saisie d'une règle comporte 4 blocs :
Attributs :
Le nom et le libellé apparaissent dans la barre de titre du panneau de la règle pour vous permettre de la repérer lorsque le panneau est replié. Donnez donc un libellé explicite à la règle.
Dans le bloc de saisie de la condition figure la ligne :
Cliquez sur le mot souligné pour sélectionner le connecteur :
Le connecteur permet de saisir une « condition composée » en combinant les « conditions simples » que vous saisirez directement sous le connecteur.
Les conditions sont présentées par niveaux. Le connecteur introduit un niveau de conditions. Un niveau est matérialisé par un retrait par rapport au connecteur.
Connecteur | Description |
---|---|
toutes | Toutes les conditions des lignes du niveau immédiatement inférieur doivent être vraies (c'est l'équivalent du ET) |
au moins une | Au moins une des conditions des lignes du niveau immédiatement inférieur doit être vraie (c'est l'équivalent du OU) |
aucune | Aucune des conditions des lignes du niveau immédiatement inférieur ne doit être vraie |
Par exemple :
toutes les conditions suivantes sont satisfaites : condition simple A au moins une des conditions suivantes est satisfaite : condition simple B condition simple C
traduit l'expression booléenne : condition simple A ET (condition simple B OU condition simple C)
condition simple A est de niveau 1, condition simple B et condition simple C sont de niveau 2.
Cliquez sur pour ajouter une condition composée en introduisant un niveau de sous-conditions sous ce connecteur.
La ligne ci-dessous s'affiche sous le connecteur avec un retrait matérialisé par la flèche :
ou
Cliquez sur à droite du connecteur pour ajouter une condition simple du niveau de ce connecteur.
La ligne ci-dessous s'affiche sous le connecteur avec un retrait :
Comme vu en début de ce document, une condition simple à pour syntaxe :
<condition simple> : <opérande><opérateur>[(<valeur> | <expression>)]
Cliquez sur le premier élément souligné de la condition, une liste déroulante s'affiche :
Les éléments de cette liste sont composés à partir des données que vous avez définies dans le panneau « Données ».
Cliquez sur le deuxième élément souligné de la condition, une liste déroulante s'affiche :
La composition de cette liste d'opérateurs dépend du type de donnée de l'opérande. Ces opérateurs sont décrits ci-après :
Opérateur | Description |
---|---|
est renseigné | L'évaluation retourne « vrai » si la donnée associée à l'opérande contient une valeur, « faux » sinon. |
n'est pas renseigné | L'évaluation retourne « vrai » si la donnée associée à l'opérande ne contient aucune valeur, « faux » sinon. |
est égal à | L'évaluation retourne « vrai » si la valeur de la donnée associée à l'opérande est égale à la valeur du résultat de l'évaluation de l'expression, « faux » sinon. |
n'est pas égal à | L'évaluation retourne « vrai » si la valeur de la donnée associée à l'opérande est différente de la valeur du résultat de l'évaluation de l'expression, « faux » sinon. |
contient | Ne s'applique qu'aux opérandes de type 'liste' : L'évaluation retourne « vrai » si la valeur de la donnée de type 'liste' associée à l'opérande contient la valeur du résultat de l'évaluation de l'expression, « faux » sinon. |
ne contient pas | Ne s'applique qu'aux opérandes de type 'liste' : L'évaluation retourne « vrai » si la valeur de la donnée de type 'liste' associée à l'opérande ne contient pas la valeur du résultat de l'évaluation de l'expression, « faux » sinon. |
Opérateur | Description |
---|---|
est renseigné | L'évaluation retourne « vrai » si la donnée associée à l'opérande contient une valeur, « faux » sinon. |
n'est pas renseigné | L'évaluation retourne « vrai » si la donnée associée à l'opérande ne contient aucune valeur, « faux » sinon. |
est égal à | L'évaluation retourne « vrai » si la valeur de la donnée associée à l'opérande est égale à la valeur du résultat de l'évaluation de l'expression, « faux » sinon. |
n'est pas égal à | L'évaluation retourne « vrai » si la valeur de la donnée associée à l'opérande est différente de la valeur du résultat de l'évaluation de l'expression, « faux » sinon. |
est supérieur à | L'évaluation retourne « vrai » si la valeur de la donnée associée à l'opérande est supérieure à la valeur du résultat de l'évaluation de l'expression, « faux » sinon. | |
est supérieur ou égal à | L'évaluation retourne « vrai » si la valeur de la donnée associée à l'opérande est supérieure ou égale à la valeur du résultat de l'évaluation de l'expression, « faux » sinon. |
est inférieur à | L'évaluation retourne « vrai » si la valeur de la donnée associée à l'opérande est inférieure à la valeur du résultat de l'évaluation de l'expression, « faux » sinon. |
est inférieur ou égal à | L'évaluation retourne « vrai » si la valeur de la donnée associée à l'opérande est inférieure ou égale à la valeur du résultat de l'évaluation de l'expression, « faux » sinon. |
contient | Ne s'applique qu'aux opérandes de type 'liste' : L'évaluation retourne « vrai » si la valeur de la donnée de type 'liste' associée à l'opérande contient la valeur du résultat de l'évaluation de l'expression, « faux » sinon. |
ne contient pas | Ne s'applique qu'aux opérandes de type 'liste' : L'évaluation retourne « vrai » si la valeur de la donnée de type 'liste' associée à l'opérande ne contient pas la valeur du résultat de l'évaluation de l'expression, « faux » sinon. |
Opérateur | Description |
---|---|
est renseigné | L'évaluation retourne « vrai » si la donnée associée à l'opérande contient une valeur, « faux » sinon. |
n'est pas renseigné | L'évaluation retourne « vrai » si la donnée associée à l'opérande ne contient aucune valeur, « faux » sinon. |
correspond à | L'évaluation retourne « vrai » si la valeur de la donnée de type date associée à l'opérande est égale à la valeur du résultat de l'évaluation de l'expression, « faux » sinon. |
ne correspond pas à | L'évaluation retourne « vrai » si la valeur de la donnée de type date associée à l'opérande est différente de la valeur du résultat de l'évaluation de l'expression, « faux » sinon. |
est postérieure à | L'évaluation retourne « vrai » si la valeur de la donnée de type date associée à l'opérande est postérieure à la valeur du résultat de l'évaluation de l'expression, « faux » sinon. |
n'est pas antérieure à | L'évaluation retourne « vrai » si la valeur de la donnée de type date associée à l'opérande n'est pas antérieure à la valeur du résultat de l'évaluation de l'expression, « faux » sinon. |
est antérieure à | L'évaluation retourne « vrai » si la valeur de la donnée de type date associée à l'opérande est antérieure à la valeur du résultat de l'évaluation de l'expression, « faux » sinon. |
n'est pas postérieure à | L'évaluation retourne « vrai » si la valeur de la donnée de type date associée à l'opérande n'est pas postérieure à la valeur du résultat de l'évaluation de l'expression, « faux » sinon. |
Opérateur | Description |
---|---|
est renseigné | L'évaluation retourne « vrai » si la donnée associée à l'opérande contient une valeur, « faux » sinon. |
n'est pas renseigné | L'évaluation retourne « vrai » si la donnée associée à l'opérande ne contient aucune valeur, « faux » sinon. |
est égal à | L'évaluation retourne « vrai » si la valeur de la donnée associée à l'opérande est égale à la valeur du résultat de l'évaluation de l'expression, « faux » sinon. |
n'est pas égal à | L'évaluation retourne « vrai » si la valeur de la donnée associée à l'opérande est différente de la valeur du résultat de l'évaluation de l'expression, « faux » sinon. |
Opérateur | Description |
---|---|
est renseigné | L'évaluation retourne « vrai » si la donnée associée à l'opérande contient une valeur, « faux » sinon. |
n'est pas renseigné | L'évaluation retourne « vrai » si la donnée associée à l'opérande ne contient aucune valeur, « faux » sinon. |
est vrai | L'évaluation retourne « vrai » si la valeur de la donnée associée à l'opérande est égale à 'true', « faux » sinon. |
est faux | L'évaluation retourne « vrai » si la valeur de la donnée associée à l'opérande est égale à 'false', « faux » sinon. |
Les opérateurs « est renseigné », « n'est pas renseigné », « est vrai » et « est faux » sont des opérateurs unaires c'est-à-dire qu'ils n'opèrent que sur l'opérande. Il n'y pas d'expression à leur droite.
Les autres opérateurs sont des opérateurs binaires.
Si l'opérateur sélectionné est un opérateur binaire, une boite à liste s'affiche après l'opérateur.
Si l'opérande est de type « choix », la boite à liste affichée est la liste des valeurs possibles de l'opérande.
Sinon la boite à liste vous permet de composer une expression :
Se reporter à la page Composition des expressions pour savoir comment saisir une expression.
Pour supprimer une condition simple ou composée, cliquez sur le bouton à droite de la condition.
Vous pouvez saisir une action soit dans le bloc « alors ... » si vous souhaitez qu'elle soit exécutée lorsque le résultat de l'évaluation de la condition retourne 'vrai', soit dans le bloc « sinon ... » dans le cas 'faux'.
Vous pouvez ajouter plusieurs actions dans chacun des blocs d'une même règle.
Cliquez sur le bouton de l'un de ces deux blocs, la ligne suivante s'affiche :
Cliquez sur « Choisissez une action ... » pour ouvrir la liste des actions possibles :
Action | Description |
---|---|
afficher l'erreur | Permet de définir un message d'erreur associé à une donnée, un groupe de données ou toutes les données |
afficher l'avertissement | Permet de définir un message d'avertissement associé à une donnée, un groupe de données ou toutes les données. A l'inverse du message d'erreur, le message d'avertissement ne bloque pas le déroulement de la simulation |
Cacher | Permet de cacher un élément du formulaire de simulation |
Montrer | Permet de montrer (afficher) un élément du formulaire de simulation |
Mettre | Permet d'affecter une valeur ou le résultat de l'évaluation d'une expression au contenu d'une donnée ou encore à sa valeur par défaut, sa valeur minimale ou maximale ou de définir le champ d'une source de données permettant d'alimenter la donnée. |
Effacer | Permet d'effacer (mettre à blanc) le contenu d'une donnée. La donnée devient « non renseignée ». |
Ces actions sont détaillées ci-après :
Choisissez « afficher l'erreur » ou « afficher l'avertissement » dans la liste des actions.
La ligne se complète pour vous permettre de saisir le message ainsi que sa cible :
Cliquez sur « cliquez pour saisir le message », le champ de saisie apparait.
Saisissez le message puis valider en cliquant sur « Ok ».
Cliquez sur « cliquez pour sélectionner ... », pour choisir la cible.
Cible | Description |
---|---|
la donnée | Le message concerne une donnée particulière, le message s'affiche en dessous du champ de saisie |
l'ensemble des données | Le message concerne tout le formulaire de simulation (ex : incohérence de données saisies), le message s'affiche en dessous du formulaire. |
le groupe de données | Le message concerne un groupe de données, le message s'affiche en dessous du groupe. |
Si la cible est une donnée ou un groupe de données, il faut sélectionner la donnée (ou le groupe) dans la liste qui s'affiche:
A noter : Pour les valeurs de données résultant d'une saisie utilisateur, il n'est pas nécessaire de définir un message d'erreur dans les cas suivants :
Ces cas sont traités automatiquement par G6K ou le navigateur.
Ces deux actions permettent de gérer l'affichage des éléments du formulaire d'une étape de simulation.
Choisissez « Cacher » ou « Montrer » dans la liste des actions, la liste des éléments s'affiche :
Une fois choisi l'élément du formulaire, la ligne se complète pour sélectionner les éléments 'conteneurs' de l'élément à cacher ou montrer.
Par exemple, si on choisit de cacher un champ, il faut sélectionner successivement l'étape, le panneau, le groupe de champs qui contient ce champ.
Le tableau ci-dessous montre la hiérarchie des conteneurs en fonction de l'élément choisi :
Elément formulaire | Conteneurs |
---|---|
l'étape | aucun |
le panneau | étape |
le bloc d'infos | étape / panneau |
le chapitre | étape / panneau / bloc d'infos |
la section | étape / panneau / bloc d'infos / chapitre |
le groupe de champs | étape / panneau |
la colonne | étape / panneau / groupe de champs |
la rangée | étape / panneau / groupe de champs |
le champ (1) | étape / panneau / groupe de champs [ / rangée ] |
le bouton d'action | étape |
la note de bas de page | étape |
le choix (2) | liste de choix d'une donnée de type 'choix' |
(1) la rangée n'est à préciser que si le champ est contenu dans un tableau.
(2) permet de montrer/cacher un élément de liste lorsque la donnée est de type 'choix'
Exemples d'actions permettant de montrer des éléments de formulaire
Choisissez « Mettre » ou « Effacer » dans la liste des actions, la liste des attributs s'affiche :
Attribut | Description |
---|---|
la valeur | Contient la valeur attribuée à la donnée |
la valeur par défaut | Contient la valeur à prendre en compte lorsque l'attribut « la valeur » n'est pas renseignée. |
la valeur minimale | Contient la valeur minimale pouvant être attribuée à la donnée. |
la valeur maximale | Contient la valeur maximale pouvant être attribuée à la donnée. |
l'index de résultat | Contient le nom d'un champ de requête de source de données lorsque la donnée est alimentée par cette source. |
l'explication | Contient une explication du mode de calcul de la donnée |
L'action « Mettre » permet d'affecter une valeur à l'un de ces attributs, l'action « Effacer » permet d'en effacer (mettre à blanc) le contenu.
Une fois l'attribut choisi, la ligne se complète ainsi :
Cliquez sur « cliquez pour sélectionner ... » pour afficher la liste des données :
Choisissez la donnée pour laquelle vous souhaitez modifier la valeur d'attribut.
S'il s'agit de l'action « Effacer », la saisie de l'action est terminée.
S'il s'agit de l'action « Mettre », vous pouvez maintenant choisir la valeur ou composer l'expression à affecter à l'attribut :
Se reporter à la page Composition des expressions pour savoir comment saisir l'expression.
Exemple d'action permettant d'affecter le résultat d'un calcul à une donnée
Pour supprimer une action, cliquez sur le bouton à gauche de l'action.
Pour modifier une règle, cliquez sur le bouton « Modifier » de la barre de titre de la règle à modifier :
Le formulaire d'édition d'une règle est le même que celui de saisie d'une règle, reportez-vous donc à la section Saisie d'une règle du présent document.
Pour supprimer une règle, dépliez le panneau « Règles métier » puis cliquez sur le bouton « Supprimer » de la barre de titre de la règle que vous souhaitez supprimer :
Puis confirmez la suppression :
Pour réordonner les règles, déplier le panneau « Règles métier », cliquez la barre de titre de la règle que vous souhaitez déplacer et tout en maintenant le bouton gauche de la souris enfoncée (le curseur apparait), glissez la règle jusqu'à l'emplacement désiré.