OPALE - Utilisation
Ordre de priorités des règles sur le moteur de règles MAPPING IBM-i
Sommaire
Introduction
Lorsqu’on libère un spool dans une OUTQ associée à Mapping, le programme recherche dans le paramétrage des associations entre spools et actions quelle action doit être exécutée.
Cette documentation décrit les règle d'ordre de priorités d'exécutions des règles.
Détails
- Le moteur cherche d’abord dans les règles associées le nom du fichier spool complet.
- MATCH --> On recherche dans les autres paramètres (utilisateur, travail, référence, formtype, etc …) les valeurs différentes de *ALL et compare les valeurs. Celle qui aura le plus de critères qui match avec pour valeur différent de *ALL sera alors exécutée (priorité à la règle la plus sélective).Dans le cas où plusieurs règles respectent ces même critères, la première de la liste sera alors exécutée.
- PAS DE MATCH --> On passe au point 2
- Le moteur cherche ensuite dans les règles associées Si il y a un match au niveau des autres critères (utilisateur, travail, référence, formtype, etc …). (notez bien que les noms partiels ont le même poids que les autres critères : Exemple : FACT*)
- MATCH --> On recherche dans les autres critères(utilisateur, travail, référence, formtype, etc …) les valeurs différentes de *ALL et compare les valeurs. Celle qui aura le plus de critères qui match avec pour valeur différent de *ALL sera alors exécutée (priorité à la règle la plus sélective).Dans le cas où plusieurs règles respectent ces même critères, la première de la liste sera alors exécutée.
- PAS DE MATCH --> La règle par défaut en *ALL pour tous les critères (si existante) sera alors exécutée (si celle-ci n'est pas existante, une erreur non visible dans la log du robot sera alors levée)
Lorsque la règle est trouvée, l'action définie pour cette règle sera alors exécutée.
Remarques
Les noms génériques
On peut utiliser des noms génériques. Il suffit d’indiquer FAC* dans le nom du fichier spool pour correspondre à tous les fichiers spool commençant par FAC. Les noms génériques peuvent aussi être indiqués dans les autres critères, sauf la largeur du spool.
Les groupes
On peut définir une règle en utilisant un groupe. Pour créer un groupe, positionner le curseur sur le champ à définir, et utiliser la touche F4. Indiquer l’option 1 pour sélectionner un groupe. Sur la fenêtre qui s’affiche, la touche F6 permet de créer un nouveau groupe et l’option 5 sur le groupe permet de définir les valeurs du groupe. Par exemple, créer un groupe COMPTA puis indiquer les différents utilisateurs du groupe. Dans le paramétrage des règles, il suffit alors d’indiquer *COMPTA pour correspondre au groupe compta. Cela évite de devoir créer une règle pour chaque utilisateur comptable.
sélection de la meilleure règle
Le programme passe en revue les différentes règles. Si une valeur ne correspond pas au fichier spool, la règle est éliminée. Mais que ce passe-t-il lorsque plusieurs règles sont acceptables ? Et bien, c’est la première règle ayant le plus de critères différents de *ALL qui sera utilisée.
Exemples
Exemple 1
F. Spool Utilis. Travail Référence Imprimé Action
FAC* *ALL *ALL *ALL *ALL ACTION1
FAC* *CPT FACTURES *ALL *ALL ACTION2
FACT* *CPT *ALL *ALL *ALL ACTION3
FACTEXP *ALL FACTURES *ALL *ALL ACTION4
Cas 1
Fichier spool libéré : FACTURE, utilisateur QPGMR, travail FACTURES.
L’action exécutée sera ACTION1
Explication
Le programme recherche une règle FACTURE. Il n’y en a pas, il recherche dans les autres lignes.
La ligne 1 correspond pour 1 critère (Nom du spool)
La ligne 2 ne correspond pas (QPGMR ne fait pas partie du groupe CPT)
La ligne 3 non plus
La ligne 4 non plus (Nom du fichier spool)
Cas 2
Fichier spool libéré : FACTURE, utilisateur DUMOULIN, travail FACTURES.
L’action exécutée sera ACTION2
Explication
Le programme recherche une règle FACTURE. Il n’y en a pas, il recherche dans les autres lignes.
La ligne 1 correspond pour 1 critère (Nom du spool)
La ligne 2 correspond pour 3 critères (Nom du spool, utilisateur (Dumoulin fait partie du groupe), travail)
La ligne 3 correspond pour 2 critères (Nom du spool, utilisateur)
La ligne 4 non plus (Nom du fichier spool)
Cas 3
Fichier spool libéré : FACTEXP, utilisateur DUMOULIN, travail FACTURES.
L’action exécutée sera ACTION4
Explication
Le programme a trouvé une règle pour FACTEXP. C’est elle qui prime. Les lignes FAC* et FACT* ne seront même pas traitées
Remarque : Notez que même si FACT* est plus précis que FAC*, la ligne sera analysée après les lignes FAC* et ne sera donc exécutée que si plus de critères (autres que *ALL) sont indiqués que pour FAC*.
Exemple 2
F. Spool Utilis. Travail Référence Imprimé Action FACTURE *ALL *ALL *ALL *STD ACTION1 FACTURE *ALL FACTURES *ALL *ALL ACTION2 FACTURE *CPT *ALL *ALL *ALL ACTION3 FACTEXP *ALL FACTURES *ALL *ALL ACTION4
Fichier spool libéré : FACTURE, utilisateur *CPT, travail FACTURES, imprimé*STD.
L’action exécutée sera ACTION1
Explication
Nous avons 3 lignes qui correspondent, et toutes les 3 ont le même nombre de critères valides (2 critères)
De ce fait la première dans la liste sera exécutée, soit ACTION1