ANNEXE : description des phases sur un exemple
Cet exemple présente un jeu d’essais complet, avec des suggestions de paramétrage d’ergonomie des applications standard (par utilisation des listes paramétrées dans les fiches), permettant de faire de véritables tableaux de bord donnant une vue synthétique du paramétrage.
Chronologie du paramétrage
Ce paragraphe présente la chronologie du paramétrage d’un domaine.
Définition d’une activité
Définition d’un domaine par l’administrateur
L’application ci-dessus de définition des domaines par l’administrateur est une proposition de personnalisation de l’ergonomie. Cette présentation sous forme de formulaire DIAPASON permet d’avoir une vue synthétique de l’état d’avancement du paramétrage du domaine et des incohérences relevées. Elle est basée sur des applications paramétrables DIAPASON : les listes paramétrées qui sont disponibles dans les présentations de GFG paramétrables.
Par exemple la liste paramétrée nommée « Liste des propriétés » est un tableau récapitulatif permettant de détecter rapidement des propriétés qui ne sont pas utilisées dans les règles, ou des propriétés en sortie non rattachées à un groupe et ainsi de compléter le paramétrage.
Définition des variables par le service demandeur
Définition des groupes du domaine par le service demandeur
Paramétrage du domaine
Génération du domaine
A la fin du paramétrage, ou à la suite de modifications de règles, le domaine doit être généré. L’action de génération est accessible depuis les applications de définition ou paramétrage du domaine.
Le traitement de génération produit une synthèse formée de tableaux récapitulatifs des variables du domaine et de leur utilisation, des règles du domaine, et des éventuels problèmes.
../..
Calcul des propriétés
Lancement du calcul
Le calcul peut être lancé de différentes applications :
Depuis les nomenclatures de pointeurs
Depuis une requête par la fonction DIALOG (GEN-PRO)
Ex : Variable_Résultat = GEN-PRO( DOMAINE= Référence Domaine ,
TYPE= LIG.CDE ou ART.STD ,
CLE1 ENTITE= Clé1 Entité,
CLE2 ENTITE= Clé2 Entité )
Depuis la liste des événements en erreur ou archivés
Depuis l’application de définition des domaines ou des prorpiétés
Par un traitement paramétré de type DTp :
Présentation des résultats
Présentation paramétrée sur les nomenclatures de pointeurs
L’application ci-dessus de modification/consultation des nomenclatures de pointeurs est une proposition de personnalisation de l’ergonomie. Cette présentation sous forme de formulaire DIAPASON, est basée sur des applications paramétrables DIAPASON : les listes paramétrées qui sont disponibles dans les présentations des nomenclatures de pointeurs. Elle permet d’avoir une vue synthétique des résultats sur les ITs et les propriétés rattachées au pointeur courant. Les pointeurs concernés par les propriétés, sont repérables grâce à la coloration bleue du coin haut droit de l’icône représentant le pointeur.
Sous forme d’arborescence depuis les nomenclatures de pointeurs
L’application ci-dessus de consultation des propriétés calculées d’un pointeur par domaine, est présentée sous forme d’arborescence. Elle permet d’avoir une vue synthétique des propriétés rattachées au pointeur et de leur provenance. Elle peut donc être un outil visuel de vérification du paramétrage. Sur cet écran, la liste est triée hiérarchiquement sur la colonne « arborescence », ce qui permet de faire apparaître une séparation entre chaque groupe de propriété et de rendre la consultation très lisible.
Exploitation des propriétés en sortie
Voici un exemple de requête d’extraction des propriétés et du fichier généré en sortie.
Requête d’extraction
PARCOURS NOMENCLATURE DEFINITION ENTITE= LIG.CDE , NUM.CDE= CLO."1510000018" , LIG.CDE= CLO."001" , ERREUR= VLO.ErrDeb :
SI VLO.ErrDeb = CGL.VIDE
VLO.domaine = CLO."USI-O"
VLO.Groupes = CLO."DUBUS-A"
SI VLO.erreur EXISTE ET <> ""
TRACE= VLO.erreur
FIN_BLOC
SINON
/* parcours de propriétés du domaine */
PARCOURS PROP. NOMENCLATURE DEFINITION DOMAINE= VLO.domaine , GROUPE= TOUS ,
ERREUR= VLO.erreur :
SI VLO.erreur = CGL.VIDE
/* récupération des information de la propriétés : di_pro_dom, di_pro_grp, di_pro_ref,di_ pro_val,di_pro_ arb,
di_pro_ord dans des variables */
VLO.erreur = LEC-NOMDEF( ACTION= REC-VALEUR , TYPE-VARIABLE=VBA ,
NOM-VARIABLE= di_prop_ref , S:VALEUR= VLO.reference )
/* répéter ce bloc pour chaque information de la proriété */
…
SI VLO.AncNOr = CGL.VIDE
VLO.RefProp = VLO.reference
VLO.ValProp = VLO.val
VLO.AncNOr = VLO.ord
FIN_BLOC
SINON
SI VLO.ord = VLO.AncNOr
VLO.RefProp = VLO.RefProp + CLO."#" + VLO.reference
VLO.ValProp = VLO.ValProp + CLO."#" + VLO.val
FIN_BLOC
SINON
CREATION Liste LST.ListeProp :
PRENDRE ListeProp NOr = ENTIER( VALEUR= VLO.AncNOr )
PRENDRE ListeProp domaine = VLO.domaine
PRENDRE ListeProp Groupe = VLO.groupe
VLO.VarF = NB-MOT( SEPARATEUR= CLO."#" , CHAINE= VLO.RefProp )
BOUCLE VLO.VarI DE CLO.2 A VLO.VarF :
VLO.reference = MOT( SEPARATEUR= CLO."#" , CHAINE= VLO.RefProp , NUMERO= VLO.VarI )
VLO.val = MOT( SEPARATEUR= CLO."#" , CHAINE= VLO.ValProp , NUMERO= VLO.VarI )
/* Création d’une liste contenant toutes les propriétés */
SELON VLO.reference
QUAND-EGAL-A CLO."VPR.NMODUSI"
PRENDRE ListeProp NModUsi = VLO.val
FIN_BLOC
/* répéter ce bloc pour chaque propriété */
…
FIN_BLOC
FIN_BLOC
FIN_BLOC
VLO.RefProp = VLO.reference
VLO.ValProp = VLO.val
VLO.AncNOr = VLO.ord
FIN_BLOC
FIN_BLOC
FIN_BLOC
FIN_BLOC
FIN_BLOC
FIN_BLOC
FIN_BLOC
VLO.Sep = CHR( VALEUR= CLO.10 )
/* Parcours de la liste des propriéts dans un certain ordre */
POUR CHAQUE LST ListeProp PAR domaine CROISSANT PAR Groupe CROISSANT PAR NModUsi CROISSANT PAR NPASSE CROISSANT PAR NSIDE CROISSANT PAR NOr CROISSANT :
/* génération du fichier en sortie selon un modèle*/
SI PREMIER( ListeProp.NModUsi ) :
CREATION Liste WFFicContenu :
PRENDRE WFFicContenu NomFichier = CLO."dubus"
PRENDRE WFFicContenu ContenuLigne = CLO."TPA~\ALBATROS~\EDICAD~\00~.00"
FIN_BLOC
…
FIN_BLOC
…..
SI DERNIER( ListeProp.NSIDE ) :
CREATION Liste WFFicContenu :
PRENDRE WFFicContenu NomFichier = CLO."dubus"
PRENDRE WFFicContenu ContenuLigne = CLO."}SIDE"
FIN_BLOC
FIN_BLOC
FIN_BLOC
VLO.erreur = ECRIT-FICHIER( IDENTIFIANT= CLO."dubus" , NOM= CLO."dubus.txt" , REPERTOIRE= CLO."/tmp/" , PARAMETRES= CGL.VIDE )