PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Quelle solution pour représenter un arbre dans une base de données  par lots et sous lots
Quelle solution pour représenter un arbre dans une base de données par lots et sous lots
Débuté par GYM, 22 jan. 2019 14:12 - 6 réponses
Membre enregistré
2 messages
Popularité : +0 (2 votes)
Posté le 22 janvier 2019 - 14:12
Moi qui débutent en informatique
Je voudrais comprendre comment on structure une base de donnée sous forme d'arbre hiérarchique.
Pour faire une base de donnée catalogue par lots et sous lots
Les LOTS sont:
des familles et sous familles de dossiers.
Exemple : LOT 1, LOT 2, LOT 3, etc.
Ensuite, dans chacun de ces LOTS, il y aura des Familles et sous familles d'autres dossiers.
Exemple : LOT 1, Dossier 1, Dossier 2, etc. Idem dans chacun de ces sous dossiers 1,2,3 etc..
Mon problème, c'est de pouvoir faire importer des Éléments de produit simple ou regroupés par référence libilet unité prix HT TVA prix TTC
Et de les classer dans ces familles et sous famille par catégorie pour former un catalogue prix
Visualisable et modifiable sur une fenêtre plan
J'ai regardé sur le net, je ne trouve pas de méthode qui me permet d'avancer.
Si vous avez une solution, je vous prier de m’aider a la réaliser
Je vous remercie d'avance.
Cordialement,
gym
Posté le 22 janvier 2019 - 14:34
bonjour
une table lot
n° lot libelle prix etc

une table famille
n° de lot N° de famille libelle prix etc

une table sous famille
N° de lot N° de famille N° de sous famille libelle prix etc

avec une requete en faisant les jointure left join on peux afficher l'arbre
Posté le 23 janvier 2019 - 10:16
Bonjour,

Une arborescense sans limite se définit en SQL par un 'Reflexive Join', c'est à dire une table qui se joint à elle même.

Table ProductClassification
ClassificationID is int //Primary unique key
Classification is string //Description
ParentID is int //Foreign duplicate key to ClassificationID

Quand ParentID est égale à 0 ou null cela concerne le niveau 1, sinon le noeud parent est l'enregistrement ou ClassificationID = ParentID.


Cela s'utilise souvent pour p.e. des BOM (Bill of Material ou Nomenclature en français) dans des environnements de production.


J'espère que cela te donne des idées pour modeler quelque chose flexible et illimité…

Peter Holemans
Membre enregistré
2 571 messages
Popularité : +222 (260 votes)
Posté le 23 janvier 2019 - 11:42
+1 pour @Peter Holemans.

Si tu crées une table par niveau, tu te retrouveras bloqué un jour car ta base sera non évolutive.

--
Cordialement,

Philippe SAINT-BERTIN
Membre enregistré
948 messages
Popularité : +30 (92 votes)
Posté le 23 janvier 2019 - 13:03
Coucou,

Dans la LST 107, tu as l'example
SQL : OPTIMISATION DE PARCOURS À L'AIDE D'ARBRES INTERVALLAIRES




Reference: https://www.pcsoft.fr/lst/Last/lst107.htm
--
In üs we trust - #92i - #LaPiraterieNestJamaisFinie
Message modifié, 23 janvier 2019 - 13:18
Posté le 23 janvier 2019 - 15:18
GYM a présenté l'énoncé suivant :
Moi qui débutent en informatique
Je voudrais comprendre comment on structure une base de donnée sous forme
d'arbre hiérarchique.
Pour faire une base de donnée catalogue par lots et sous lots Les LOTS sont:
des familles et sous familles de dossiers.
Exemple : LOT 1, LOT 2, LOT 3, etc.
Ensuite, dans chacun de ces LOTS, il y aura des Familles et sous familles
d'autres dossiers. Exemple : LOT 1, Dossier 1, Dossier 2, etc. Idem dans
chacun de ces sous dossiers 1,2,3 etc..
Mon problème, c'est de pouvoir faire importer des Éléments de produit simple
ou regroupés par référence libilet unité prix HT TVA prix TTC Et de les
classer dans ces familles et sous famille par catégorie pour former un
catalogue prix Visualisable et modifiable sur une fenêtre plan J'ai regardé
sur le net, je ne trouve pas de méthode qui me permet d'avancer. Si vous avez
une solution, je vous prier de m’aider a la réaliser Je vous remercie
d'avance. Cordialement,
gym


bonjour,

une bonne lecture pour y voir plus clair entre arbre intervallaire ou
auto jointure :
https://sqlpro.developpez.com/cours/arborescence/

--
Cordialement JeAn-PhI
Membre enregistré
2 messages
Popularité : +0 (2 votes)
Posté le 23 janvier 2019 - 19:22
D'avance, je vous remercie de votre Aide à tous.

À JeAn-PhI qui m'a, orienter a un cours particulier remplie d'enseignements.
À Charly CANDO qui m'a fait découvrir la LST 107 de PCSOFT
À Peter Holemans !!!! Une arborescence sans limite se définit en SQL.
À Philippe SB pour sons conseil de limitation de ressource de la Base.
À serge pour la méthode de lecture : une table lot n° lot libelle prix, etc.

Si quelqu'un peut me faire un petit bout de ce projet je serais plus qu'heureux de mettre en avant ma faculté d'adaptation,
Si je n'arrive pas à voir le fonctionnement en exemple sous Windev je resterais bloquer pour longtemps Car je ne maîtrise pas encore les autres langages de Proclamation
Cordialement.
gym.