L’accès aux documents GED depuis une entité se fait par le biais d’une application se présentant sous la forme d’un arbre et d’une liste.
On parle de ça :
➡️ Cette présentation standard peut être paramétrée. Comment faire 🤓 ?
Dans notre exemple ci-dessous, au lieu d’afficher les documents rattachés directement à ce client, on souhaite également afficher les documents correspondants à ces commandes et leurs lignes, comme ci-dessous:
Comment faire ?
Etape 1 : Créer l’arborescence en dur
On commence par créer une trame d’arborescence “en dur” sur laquelle on ajoutera dynamiquement des branches.
C’est par ici :
Et pour ajouter les branches, on clique sur
Définition entête
Structure hiérarchie
On définit par défaut une arborescence simple avec deux fils de la branche initiale ADCCLI_ARB (0000000001) :
-
Documents Client (0000000002) Caractéristique Champ Alpha 1 = GCLIENT (voir la suite)
-
Documents Commandes (0000000003)
Nous allons à partir de cette base alimenter la structure de l’arbre dynamiquement dans la requête d’initialisation afin d’ajouter autant de branches que de commandes du client ainsi que les lignes de ces mêmes commandes.
Etape 2 : On crée les requêtes
On va ensuite créer la requête d’initialisation de notre arbre, dont la construction se basera sur la hiérarchie défaut créée précédemment. Le principe est le même que pour un arbre paramétré, vous pouvez donc vous référez à cette documentation : Créer un arbre dynamique (chapitre "Créer la requête REB de constitution de l’arbre")
➡️ Requête REB d’initialisation de l’arbre ADGCLI_INI
On part du principe que cet objet paramétrable va être lancé depuis la GFD des clients.
J’ai donc à ma disposition les variables SCR.EntTen et EntCl* pour connaitre le client sur lequel je me trouve :
POUR CHAQUE/SOC DTD CDCoEn AVEC INDEX (ParCliCDCoEnIdx) DTD CDCoEn.CliResRef = SCR.EntCl1 ET DTD CDCoEn.CliGenRef = SCR.EntCl2 :
SI DTD CDCoEn.GenEnrDateCre >= VLO.DateDLim
CREATION Liste WfArbSor :
PRENDRE WfArbSor NodIdePer = CLO."0000000003"
PRENDRE WfArbSor NodRefPere = CLO."0000000003"
PRENDRE WfArbSor NodIdeEnc = DTD CDCoEn.CdeNumCom
PRENDRE WfArbSor NodRef = DTD CDCoEn.CdeNumCom
PRENDRE WfArbSor NodLib = DTD CDCoEn.CdeNumCom
PRENDRE WfArbSor NodIco = CLO."FAT-ENDED"
PRENDRE WfArbSor NodIcoFer = CLO."FERMER"
PRENDRE WfArbSor NodVa1 = CLO."DOS_GCDE"
PRENDRE WfArbSor NodCl1 = DTD CDCoEn.CdeNumCom
FIN_BLOC
CREATION Liste WfArbSor :
PRENDRE WfArbSor NodIdePer = DTD CDCoEn.CdeNumCom
PRENDRE WfArbSor NodRefPere = DTD CDCoEn.CdeNumCom
PRENDRE WfArbSor NodIdeEnc = DTD CDCoEn.CdeNumCom + CLO."_DOC"
PRENDRE WfArbSor NodRef = DTD CDCoEn.CdeNumCom + CLO."_DOC"
PRENDRE WfArbSor NodLib = CLO."Documents de" + " " + DTD CDCoEn.CdeNumCom
PRENDRE WfArbSor NodIco = CLO."FAT-ENDED"
PRENDRE WfArbSor NodIcoFer = CLO."FERMER"
PRENDRE WfArbSor NodVa1 = CLO."GCDE"
PRENDRE WfArbSor NodTab = CLO."GCDE"
PRENDRE WfArbSor NodCl1 = DTD CDCoEn.CdeNumCom
FIN_BLOC
POUR CHAQUE/SOC DTD CDCoLi AVEC INDEX (CDCoLiIdx) DTD CDCoLi.CdeNumCom = DTD CDCoEn.CdeNumCom :
CREATION Liste WfArbSor :
PRENDRE WfArbSor NodIdePer = DTD CDCoEn.CdeNumCom
PRENDRE WfArbSor NodRefPere = DTD CDCoEn.CdeNumCom
PRENDRE WfArbSor NodIdeEnc = DTD CDCoLi.CdeNumLig
PRENDRE WfArbSor NodRef = DTD CDCoLi.CdeNumLig
PRENDRE WfArbSor NodLib = DTD CDCoLi.CdeNumLig
PRENDRE WfArbSor NodIco = CLO."FAT-ENDED"
PRENDRE WfArbSor NodIcoFer = CLO."FERMER"
PRENDRE WfArbSor NodVa1 = CLO."GCDL"
PRENDRE WfArbSor NodTab = CLO."GCDL"
PRENDRE WfArbSor NodCl1 = DTD CDCoLi.CdeNumCom
PRENDRE WfArbSor NodCl2 = DTD CDCoLi.CdeNumLig
FIN_BLOC
FIN_BLOC
FIN_BLOC
FIN_BLOC
On initialise une branche par commande du client donné.
On va ensuite créer la règl ede mise à jour de l’arborescence. Dans cette requête, on alimente quand on est sur une feuille la liste WfEntSel qui permet d’afficher la liste standard de présentation des documents.
Dans chaque branche de la commande, on a une feuille permettant d’afficher les documents généraux de la commande ainsi qu’une nouvelle branche par lignes de commande.
Requête détail des documents ADGCLI_MAJ
RECH PREM LST WfArbEnt AVEC WfArbEnt.NodIdePer = SCR.ARB_NodIdePer ET WfArbEnt.NodIdeEnc = SCR.ARB_NodIdeEnc:
POUR CHAQUE/SOC DTD ADGEDEnt AVEC DTD ADGEDEnt.ADGEDTen = WfArbEnt.NodTab ET DTD ADGEDEnt.ADGEDCl1 = WfArbEnt.NodCl1 ET DTD ADGEDEnt.ADGEDCl2 = WfArbEnt.NodCl2 ET DTD ADGEDEnt.ADGEDCl3 = WfArbEnt.NodCl3 :
POUR CHAQUE/SOC DTD ADGEDDoc AVEC DTD ADGEDDoc.ADGEDCat = DTD ADGEDEnt.ADGEDCat ET DTD ADGEDDoc.ADGEDCleV = DTD ADGEDEnt.ADGEDCleV:
CREATION Liste WfEntSel:
PRENDRE WfEntSel DiaIde = IDENTIFIANT (DTD ADGEDDoc)
FIN_BLOC
FIN_BLOC
FIN_BLOC
FIN_BLOC
Etape 2 : On créé la nouvelle arborescence
On va ensuite créer une nouvelle arborescence, c’est par ici :
On remplit ensuite :
Onglet Généralités
-
Référence : La référence de l’arborescence.
-
Désignation : La désignation de l’arborescence, correspondant au texte affiché dans un explorateur, ainsi que dans le menu contextuel lorsqu’il s’agit d’une action.
-
Libellé court : Le libellé court, correspond au texte affiché dans la barre de commande lorsqu’il s’agit d’une action.
-
Titre : Le titre de l’arborescence.
-
Icône : L’icône de l’arborescence, qui sera affiché dans l’explorateur et devant le titre une fois lancé.
-
Mot Directeur : Le mot directeur de l’application.
-
Domaine, Famille, Sous Famille : Le domaine, la famille et la sous famille de l’arborescence utilisé dans la gestion des droits.
-
Commentaire: Permet d’indiquer une indication sur l’arborescence.
Onglet Démarrage
-
Mode Démarrage : Le mode de démarrage va permettre de déterminer l’accès aux actions de gestion de l’arborescence paramétré, et le comportement vis-à-vis des applications père.
|
Valeur |
Description |
|
0 |
Mode Visualisation : Aucune action de gestion n’est disponible, pas de blocage du père |
|
1 |
Mode Gestion Libre : L’accès aux actions est disponible, le père n’est pas bloqué |
|
2 |
Mode Gestion avec blocage applications père : les actions sont disponibles, le père est bloqué jusqu’à la fermeture de l’arbre |
Typ. Ctx. App. : Type de récupération de critères lors d’un démarrage depuis une application standard :
|
Valeur |
Description |
|
1 |
Pas de relation : aucun critère n’est récupéré. |
|
2 |
Identifiant : l’identifiant et le critère clé de l’application père sont récupérés. |
|
3 |
Identifiant et Variables contextuelles : en plus de l’identifiant et du critère clé, les critères du contexte courant de l’application père sont récupérés |
|
4 |
Identifiant et Liste de sélection : la liste des identifiant sélectionnés sur le père est récupérée |
|
5 |
Identifiant, liste de sélection et variables contextuelles : tous les critères cités dans ce tableau sont récupérés |
-
Typ Ctx. DIALOG: Type de récupération de critères lors d’un démarrage depuis une application paramétrable :
|
Valeur |
Description |
|
1 |
Pas de relation : aucun critère n’est récupéré. |
|
2 |
Variables utiles : récupération sur le père des variables de type VCR déterminées dans la zone « Var Dem. Dia. » |
|
3 |
Toutes les variables : récupération de toutes les variables SCR, VCR, VBP de l’application père. |
|
4 |
Toutes les variables et tableur père éventuel : récupération de toutes les variables précédemment citées et si le père est un tableur dynamique, le contenu de WfTabValPere. |
-
Var. Dém. Dia. :: Variables utiles au démarrage depuis une application paramétrée. Accès à un drag&drop sur les variables VCR.
-
Détail : Ajout d’un détail éventuel.
Onglet Définition
-
Règle Initialisation: La règle d’initialisation de l’arborescence. Cette requête permettra de définir l’arborescence de l’ADG. Le but de cette requête est d’alimenter la liste WfArbSor qui décrit l’arborescence (Niveaux, icônes, libellés). On renseigne la règle créée à l'étape précédente.
-
Arb. Défaut: On renseigne l’arborescence défaut créée dans l'étape 1.
-
Gestion Droit ? Logique indiquant si on affiche dans la liste les documents pour lesquels l’utilisateur n’a pas les droits. Si oui, il n’aura aucune action disponible sur l’enregistrement.
-
Règle Màj: La règle de mise à jour de l’arborescence. On renseigne la règle créée à l'étape précédente.
Onglet Interface
-
Act. Ouv.: Logique indiquant si sur la liste des documents, l’action « ouvrir document » est disponible.
-
Orientation séparateur: Permet de définir l’orientation du splitter :
-
Vertical : l’arbre sera à gauche de la liste
-
Horizontal : l’arbre sera au dessus de la liste
-
-
Caract. séparateur: Proportion en pourcentage de la taille de l’arbre par rapport à la taille totale d’affichage de l’arborescence.
Onglet Actions
-
Actions: Accès à l’application de définition des actions pour l’arborescence
L’action standard “Joindre un document” est disponible uniquement :
-
Au clic droit depuis une entité
-
Depuis un arbre standard
Mais il est possible de l’ajouter ici comme une action spécifique pour les arbres paramétrés. Cette action doit avoir :
-
Type : ACT,
-
Code action : JOINDRE.
-
Détail: Affichage du détail des actions définies pour la rubrique.
-
Règle Actions: Règle RCT de gestion des actions.
Etape 4 : associer ce nouvel affichage de GED à l’entité concernée
Une fois le nouvel affichage créé, encore faut-il l’associer à l’entité concernée, ici, les clients ! Dans les entités, on vient donc saisir cette nouvelle arborescence :
Et il n’y a plus qu'à tester !