Exemple : créer un couplage arbre/...
On souhaite créer un couplage avec :
A gauche, un arbre qui contient différents menus sur ses branches. Cet arbre est le point d’entrée pour l’utilisateur.
En fonction de la branche sur laquelle on clique à gauche, on affiche un outil à droite (PSD, Tableur, Liste paramétrée…)
Ce couplage permet d’assurer la maintenance d’un scénario de configuration commerciale, et voici à quoi il ressemble :
Comment créer un couplage Arbre/… ?
On commence par créer les outils qu’on va mettre dans notre couplage !
Ca semble logique, mais c’est effectivement le point de base 🙂 Pour cela vous pouvez vous référer à la documentation du couplage, de la PSD, du Tableur dynamique…
On créé le couplage
Par ici:
Et pour un couplage Arbre/…, on va remplir de la sorte:
|
On choisit les outils fils depuis l’arbre
Pour un arbre, on utilise rarement de requête de choix de fils: il est plus simple de mettre directement le fils dans la requête de l’arbre !
On va directement pouvoir mettre, pour chaque branche, quel outil fils sera ouvert dans le couplage :
Et on ne ferme pas cette requête, pour l'étape suivante ! 😉
On remplit les critères d’entrée des outils fils
Les outils fils qu’on va lancer depuis notre arbre ont besoin de critères d’entrée.
Dans notre couplage, on va par exemple ouvrir un tableur fils quand on est sur cette branche :
Mais si on ouvrait ce tableur indépendamment, il nous demanderait d’entrer des critères:
Dans notre couplage il va donc falloir lui faire parvenir les critères qu’il demande, depuis l’outil père !
Comment transmettre des critères d’entrée au tableur ?
On peut alimenter les variables NodCl1,2… et NodVA1,2… dans la requête de l’arbre. Ces variables sont automatiquement récupérées dans les SCR de la requête de médiation :
NodCl1,2…= SCR.EntCl1,2…
NodVa1,2…=SCR.EntVa1,2…
Et c’est dans la requête de médiation qu’on va initialiser les critères d’entrée du tableur !
Dans l’exemple ci-dessus par exemple, pour la branche sur laquelle on est, on va transmettre la référence du scénario depuis la requête de l’arbre à la requête de médiation pour l’utiliser en entrée du tableur.
Ainsi, en fonction de la branche sur laquelle on se trouve dans notre arbre SCR.EntCl1), on va pouvoir alimenter les critères nécessaires pour lancer le fils dans la requête de médiation :
Il faut être méthodique ici pour ne pas s’embrouiller ! Dans l’arbre, on va toujours utiliser les mêmes variables pour transmettre les même informations : par exemple ici, on utilise toujours NodCl1 pour transmettre la référence de la branche. Si on commence à utiliser NodCl1 sur certaines branches, et NodCl2 sur d’autres.. on ne va pas s’y retrouver !
Ajouter des actions sur le couplage
Quand on a un arbre en père du couplage, les actions à lancer sur le couplage peuvent être définies au niveau de l’arbre ou au niveau du couplage ( si elles sont définies sur l’arbre on en hérite en niveau du couplage). Dans l’exemple ci-dessous on les définit sur le couplage mais les 2 solutions fonctionnent !
On définit toutes les actions sur le couplage
On commence par définir les actions sur le couplage :
Les actions sont ensuite définies comme dans le moteur RCT:
On peut donc les définir directement ci-dessous, ou via la requête des actions définie sur le couplage :
Dans cette requête on peut lancer les actions en utilisant des informations issues de l’arbre dans les SCR.EntCl1,2…; SCR.EntVa1,2; on verra à l'étape suivante comment les récupérer !
On choisit les actions à lancer et on transfère les critères nécessaires depuis la requête de l’arbre
On va ensuite aller dans la requête de l’arbre. Pour chaque branche, on va pouvoir:
déterminer quelle action peut être lancée sur cette branche avec PRENDRE WfArbSor NodLstAt=CLO.”Liste chaînée des références d’action lançables séparées par une virgule”. Sur chaque branche on aura ainsi en non-grisé uniquement les actions qu’on a mis dans cette liste.
si besoin, on peut transmettre des informations utiles pour lancer ces actions via les variables NodCl1,2…NodVa1,2… qui seront récupérées dans les SCR.EntCl1,2…SCR.EntVa1,2.. dans la requête des actions du couplage
Comment réactualiser l’arbre à la suite d’une action ?
Si, à la suite d’une action lancée depuis le couplage, on a besoin de réactualiser l’arbre, il faut se mettre en retour d’action SCR_RCT.TypeAcess= IAP dans la requête des actions définie sur le couplage, pour l’action qu’on vient de lancer (SCR.IAP_ValActFils=CLO.”Référence action”), et initialiser la VPB.IAP_ModeRea=CLO.”ACT”: