|
Remplissage table hierarchique |
Débuté par Jeff, 26 déc. 2006 09:19 - 2 réponses |
| |
| | | |
|
| |
Posté le 26 décembre 2006 - 09:19 |
Bonjour,
J'ai un soucis qui va faire sourir les vrais pros... Je lis une table article qui sont liés à une catégorie et une sous catégorie. Je souhaite que la première branche de ma table soit la catégorie, la seconde soit la sous catégorie et la troisième le titre de l'article. J'utilise donc le code suivant :
HLitPremier(Catégorie,IDCatégorie) // on ajoute la première catégorie dans la table TANTQUE PAS HEnDehors(Catégorie) catID est un réel=Catégorie.IDCatégorie catnom est une chaîne=Catégorie.Titre TableAjouteLigne(TH_articles,Catégorie.Titre) // on filtre les enregistrements de sous catégorie correspondant à la catégorie sélectionnée HLitRecherchePremier(HFSous_catégorie,IDCatégorie,catID) SI HTrouve(HFSous_catégorie) ALORS // S'il existe une sous catégorie POUR TOUT HFSous_catégorie AVEC IDCatégorie = catID SScatId est un réel=HFSous_catégorie.IDSous_catégorie sscatnom est une chaîne=HFSous_catégorie.Nom TableAjouteFils(TH_articles,catnom,HFSous_catégorie.Nom) // idem pour les articles SI HLitRecherchePremier(Articles,IDSous_catégorie,SScatId)=Faux ALORS TableAjouteFils(TH_articles,catnom,"Aucune sous catégorie dans cette catégorie") SINON POUR TOUT Articles AVEC IDSous_catégorie = SScatId SI PAS HLitRecherchePremier(Revue,IDRevue,Articles.IDRevue) ALORS Info("Erreur lors de la recherche de la revue pour l'article : "+Articles.Nom_article) FIN TableAjouteFils(TH_articles,sscatnom,Articles.Nom_article,Revue.Nom,Articles.IDArticles) FIN FIN FIN SINON TableAjouteFils(TH_articles,catnom,"Aucune sous catégorie dans cette catégorie") FIN HLitSuivant(Catégorie,IDCatégorie) FIN
J'ai un plantage au niveau de la ligne qui ajoutefils et le nom de l'article pour la sous catégorie. J'ai repris mon code dans tous les sens, j'ai même essayé un autre mode de parcours (en commancant nom pas par une lecture des catégories, puis des sous catégories qu'elle peuvent contenir et enfin des article qui peuvent être liés à cette sous catégorie, mais par une lecture des articles) mais j'ai trop de hlitrecherche premier.. Quelqu'un verrait-il une boulette dans le code ?
D'avance un grand merci !!!! |
| |
| |
| | | |
|
| | |
| |
Posté le 26 décembre 2006 - 10:09 |
Bonjour,
Il aurait été intéressant de fournir le message d'erreur. Je vois un problème de le code d'ajout des fils. Dans la ligne TableAjouteFils(TH_articles,catnom,"Aucune sous catégorie dans cette catégorie") catnom ne correspond pas (a mon avis) à une racine valide sauf si catnom = catégorie.titre+tab+catnom
voici exemple simple ligne 1 - Catégorie ligne 2 - Sous-catégorie ligne 3 - Titre Article. ligne 4 - Catégorie 2 ligne 5 Sous-Cat 2 ligne 6 Titre Article code : TableAjouteligne(NomTable,Catégorie...) TableAjouteFils(NomTable,1,Sous-catégorie) TableAjouteFils(NomTable,2,Titre Article)
TableAjouteFils(NomTable,0,Catégorie 2) TableAjouteFils(NomTable,4,Sous-cat2) TableAjouteFils(NomTable,5,Titre Article)
ou
TableAjouteligne(NomTable,Catégorie...) TableAjouteFils(NomTable,"Catégorie",Sous-catégorie) TableAjouteFils(NomTable,"Catégorie"+tab+Sous-catégorie",Titre Article)
etc...
En espérant t'avoir aidé. |
| |
| |
| | | |
|
| | |
| |
Posté le 26 décembre 2006 - 10:50 |
Merci beaucoup Je pensais aprés avoir lu l'aide en ligne qu'on pouvais se dispenser du TAB pour indiquer la racine au contraire des treeview. C'était donc une mauvaise interprétation de ma part. |
| |
| |
| | | |
|
| | | | |
| | |
|