Bonjour,
Je cherche à faire un "héritage inversé" sur une table contenant des données hiérarchiques. Mes connaissances étant limitées en Sql Server, je cherche des pistes.
J'ai très bien réussi à faire valoir un attribut de champs aux enfants d'un nœud (par la récursivité), mais j'aurais voulu l'appliquer aux nœuds parents.
Autrement dit, je structure, d'un coté, une arborescence hiérarchique sur laquelle j'ai la possibilité, accessoirement, pour chaque nœud, de les associer à un élément d'une table indépendante. J'arrive, par récursivité, à l'appliquer à tout les nœuds enfants, ce qui est plutôt simple quand on a compris la logique T-SQL. Là ou c'est plus compliqué, c'est pour les parents ... Pour chaque nœud ayant un lien "toto" vers la table annexe, je souhaiterais généré les enregistrement "Parent <-> toto", "Grand parent <-> toto", "Arrière grand parent <-> toto" et ainsi de suite jusqu'au Root.
Ensuite, par un simple SELECT DISTINCT, j'obtiendrais la liste de couples unique.
Pour décrire le contexte dans lequel ce besoin est nécessaire est le suivant :
- Je définit une structure hiérarchique d’arborescence produit (AP) à laquelle je définit, éventuellement, pour chaque nœud, un sous ensemble fonctionnelle (SEF).
- Une équipe d'utilisateurs définissent des exigences (EX) sur les produits
- Une autre équipes (faite de responsables SEF), doivent répondre à ces exigences. Pour cela, j'envisageais de "filtrer", suivant un "profil" SEF, les lignes des élément de l'AP qui finalement le concerne.
- -> Par exemple, dans le cas où une exigence serait placé au plus haut niveau (le root), alors, chaque responsable SEF la verrait dans son scope (sauf si, bien sûr, aucun élément de l'AP est associé à son SEF !).
- Pour compliquer la tâche, un utilisateur peut être responsable de plusieurs SEF ! j'entends par là que je ne peux faire une requête basé sur un seul SEF ! cela étant dit, je souhaite quand même avoir une liste exhaustive car une réponse à une exigence se fait toujours dans un contexte SEF ... s'il est responsable de deux SEF, et qu'une exigence est associée à ses 2 SEF, alors, il y aura 2 enregistrements avec la même exigence ...
J'espère avoir été clair dans ma demande, et merci pour votre aide.
Talere
Partager