Créer un tableur dynamique hiérarchique
Qu’est-ce que c’est ?
Sur le même concept que la liste hiérarchique sur une entité, le tableur hiérarchique est un tableur avec un explorateur permettant de filtrer les lignes du tableur.
Tableur dynamique “classique” | Tableur dynamique hiérarchique |
---|---|
Où créer ce tableur ?
La définition d’un tableur dynamique hiérarchique s’effectue à partir de la même application qui permet de définir un tableur dynamique classique:
Comment remplir les champs du tableur ?
Onglet « Définition »
Type Interface: Permet de définir trois types d’interface pour le tableur dynamique :
Normal : le tableur dynamique ne contiendra pas de lignes et notions hiérarchiques
Hiérarchique : les lignes hiérarchiques définies viendront s’insérer dans le tableur
Hiérarchique avec Arbre : le tableur hiérarchique défini précédemment sera accompagné d’un arbre représentant la structure de la hiérarchie et permettant de filtrer les enregistrements du tableur qui apparaîtront à l’écran.
Req. Aff. Noeud :Requête d’affichage des nœuds : Requête qui permet de mettre à jour les enregistrements du tableur dynamique de type hiérarchique.
App Def Hierarchie : Apparence défaut des enregistrements de type hiérarchique : référence vers un élément de l’application « Apparence Liste » qui permet de définir la couleur de fond et la couleur du texte d’un enregistrement hiérarchique.
Saisies Lignes ? Permet d’autoriser ou non la saisie sur les lignes hiérarchiques.
Affichage 0 ? Définit pour un tableur dynamique hiérarchique si pour les colonnes de type numérique, la valeur 0 sera affichée.
Hiérarchie Déf. Permet de récupérer et d’attacher au tableur dynamique une structure hiérarchique déjà définie.
Pour les autres champs, voir ici !
Définir l’arborescence
Il existe plusieurs méthodes pour définir l’arborescence du tableur dynamique hiérarchique :
Méthode 1: Une hiérarchie défaut a été renseignée sur la définition du tableur.
Le champ « Hiérarchie Déf. » sur l’application de définition des tableurs dynamiques permet de sélectionner une hiérarchie défaut. Celle-ci est une initialisation de la structure de l’arbre accessible dans l’explorateur « Studio DIAPASON »
Cette application permet de définir une liste de hiérarchies défaut pour les tableurs dynamiques hiérarchiques.
L’action « Structure Hiérarchie » permet d’aller directement définir une arborescence dans une application de type Arbre-Fiche.
Pour plus de détails voir : Documentation Hiérarchies.
Méthode 2: Dans la règle d’initialisation du tableur, la structure d’une hiérarchie défaut est récupérée.
Il est possible dans la règle de type REB d’initialisation du tableur dynamique hiérarchique de charger la structure d’un arbre existant dans DIAPASON.
La fonction HIE-INI-ARB, va permettre de récupérer des hiérarchies défaut sur tableur dynamiques, mais aussi les hiérarchies défaut des entités (Affaires, Devis/Commandes/Factures), et enfin les hiérarchies liées à des clés entité (affaire, devis/commande, facture particulières).
Cette fonction permet d’initialiser la structure de WfArbSor, liste DIALOG permettant de définir une arborescence..
Paramètres en entrée :
TYPE-INI : type de hiérarchies :
CLE-ENTITE = la hiérarchie est liée à une clé sur une entité (une commande, un devis, une affaire, une facture).
REF-DEF-ENTITE = Hiérarchie défaut pour les entités
REF-DEF-TABDYN = Hiérarchie défaut pour tableurs dynamiques hiérarchiques
ENTITE : Référence entité (cas CLE-ENTITE ou REF-DEF-ENTITE).
CLE-ENTITE : Référence devis/commande, référence affaire ou référence facture (uniquement dans le cas CLE-ENTITE).
REF-HIERARCHIE : Référence de la hiérarchie parmi les hiérarchies de l’entité (Défaut, ou référence).
Méthode 3: La structure complète de l’arborescence est définie dans la règle d’initialisation :
Il est possible de définir la structure de la hiérarchie dans la requête d’initialisation du tableur dynamique. Pour cela l’utilisateur devra alimenter la liste WfArbSor.
Les champs suivants sont renseignés :
« NodIdeEnc » et « NodRef » : représentent la référence de l’enregistrement en cours de création.
« NodIdePer » et « NodRefPere » : référence vers l’enregistrement hiérarchique père.
« NodLib » : Libellé de l’enregistrement hiérarchique.
« NodNOrd » Positionnement dans la hiérarchie.
« NodIco » (Facultatif) : Icône de la branche de l’arbre lorsqu’un lien hiérarchique est ouvert.
« NodIcoFer » (Facultatif) : Icône de la branche de l’arbre lorsqu’un lien hiérarchique est fermé.
« NodLisApp » (Facultatif) : Référence vers un enregistrement de l’application « Apparence Liste » qui définira la couleur du texte ainsi que la couleur de fond des enregistrements hiérarchiques.
Créer le lien entre l’arborescence et les lignes du tableur via la liste personnelle
Une fois les liens hiérarchiques créés, il est nécessaire de rattacher les éléments du tableur (liste personnelle) à un enregistrement hiérarchique. Pour cela il existe un champ spécifique que l’on ajoutera à la liste personnelle. Ce champ ne sera pas affiché.
Il s’agit du champ LIS_Noeud. En lui affectant la référence d’un lien hiérarchique, on définit une relation père-fils entre l’élément du tableur et la hiérarchie.
Exemple :
On attache l’élément du tableur dynamique « Fenêtre » au lien hiérarchique « 0000000006 ».