|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : lister sans doublons les elements d'une DB et afficher dans un treeview [ Algorithme / Maths ] (waspy59)
Informations & options pour cette discussion
lundi 29 septembre 2008 à 23:21:19 |
lister sans doublons les elements d'une DB et afficher dans un treeview

waspy59
|
Bonjour au forum, Voila j'ai un tit soucis dont je n'arrive pas a me depatouiller... moi et les algorithmes ça fait deux :mouarf: bon voici mon probleme, j'ai une DB access avec une table contenant deux champs (Produits et Lot). Pour chacun de ces champs j'ai plusieurs entrées qui peuvent presenter des doublons... voici un tit exemple pour illustrer: [B]Produits:Lot[/B] table:1111 chaise:3333 chaise:2222 table:9999 chaise:3333 table:1111 lampe:4444 j'aimerais trier les afficher dans un treeview la chose suivante: +table ++1111 ++9999 +chaise ++3333 ++2222 +lampe ++4444 Je m'emmêle les pinceaux dans les boucles de l'algo et au final ça donne tous sauf ce que je veux. Je pense qu'il faut de phase de tri dans l'algo mais j'y arrive po du tout...  si quelqu'un peut m'apporter son aide 
|
|
|
mardi 30 septembre 2008 à 07:51:11 |
Re : lister sans doublons les elements d'une DB et afficher dans un treeview

lillith212
|
Salut, pour ne pas avoir de doublon dans ta requête de selection utilise le mot clé DISTINCT (un truc facile c'est que tu la tapes en sql sous access et tu vois le résultat pour apres l'adapté à ta commande vb) Ensuite tu inserts le résultat au niveau de ton treeview. Il n'y a pas de problème mathèmatique dans ta question c'est simplement comment tu vas faire ta requete. S.L.B.
-- Le règlement tu liras -- Des recherches tu feras -- Le style SMS tu banniras -- -- De la validation pertinente tu feras -- Du respect tu auras -- Le bon thème tu choisiras --
|
|
|
mardi 30 septembre 2008 à 10:06:50 |
Re : lister sans doublons les elements d'une DB et afficher dans un treeview

aserf
|
Salut, Je ferait un Select * From TABLE order by produit, ensuite je parcour les enregistrements, si l'enregistrement actuel est un nouveau produit tu le rajoute et si il a le produit identique que l'enregsitrement precedent, tu ne rajout pas le produit mais le lot au produit actuel, bonne chance, a++ seb Développement Rapide PHP / VBNET -> www.database2code.com
|
|
|
mardi 30 septembre 2008 à 10:27:16 |
Re : lister sans doublons les elements d'une DB et afficher dans un treeview

lillith212
|
Réponse acceptée !
Re: SELECT DISTINCT Produit, lot FROM tatable ORDER BY produit S.L.B.
-- Le règlement tu liras -- Des recherches tu feras -- Le style SMS tu banniras -- -- De la validation pertinente tu feras -- Du respect tu auras -- Le bon t
|
|
|
mardi 30 septembre 2008 à 14:24:03 |
Re : lister sans doublons les elements d'une DB et afficher dans un treeview

waspy59
|
hello,
je n'avais pas penser a faire mon tri directement dans la requête sql.... mais bon j'ai une excuse, je debute lol
encore merci pour votre aide
|
|
|
lundi 23 février 2009 à 15:30:59 |
Re : lister sans doublons les elements d'une DB et afficher dans un treeview

guilty90
|
Bonjour, a vous je viens écrire dans se tuto car je pense etre dans la bonne partie.
Voila mon problème :
J ai une base de données : matériaux / sous-ensembles / produits / ensembles et donc un sous-ensembles peut avoir plusieurs matières/ un produit peut avoir plusieurs sous-ensembles / etc... Je peux donc avoir : un produit avoir des sous-ensembles qui ont plusieurs fois les mêmes matériaux.
( je m exprime mal donc si vous voulez des précisions demander :p )
voila mon code pour afficher mes données :
Do While Not rs_user.EOF 'ordre : (lien, action, clée, text, image) Set n = TrvContact.Nodes.Add("Root", tvwChild, rs_user.Fields(1), , rs_user.Fields(1), 1) test.text = rs_user.Fields(10) lienfils.text = rs_user.Fields(1) Set rs_ensemb = DB.OpenRecordset("select * from ensembles where userENS = " + test.text) Do While Not rs_ensemb.EOF 'ordre : (lien, action, clée, text, image) Set n = TrvContact.Nodes.Add(i, tvwChild, rs_ensemb.Fields(0), rs_ensemb.Fields(0), 2) lienfilsfils.text = rs_ensemb.Fields(0) Set rs_prod = DB.OpenRecordset("select * from produit, ensembles, regrouper where produit.desP=regrouper.desP and regrouper.desENS = ensembles.desENS and ensembles.desENS='" + rs_ensemb.Fields(0) + "';") rs_ensembl.movenext loop rs_user.movenext loop
Ce n'est qu'une partie de mon code, ce code marche si on rencontre que une fois un matériaux, ou un sous-ensembles , ou un produit, etc...
Je suis en train de changer et de tester avec desi ...
Je vous remercie d'avance pour votre future aide.
Cordialement Guilty90
|
|
|
lundi 23 février 2009 à 16:16:45 |
Re : lister sans doublons les elements d'une DB et afficher dans un treeview

guilty90
|
tiss , c est toujours aprés avoir demander qu'on trouve tout seul lol : Voila mon code ( c'est normale si vous comprennez pas tout de suite :) ) :
b = 1 d = 1 f = 1 h = 1 j = 1 Do While Not rs_user.EOF 'ordre : (lien, action, clée, text, image) a = "user " & b Set n = TrvContact.Nodes.Add("Root", tvwChild, a, rs_user.Fields(1), 1) test.text = rs_user.Fields(10) Set rs_ensemb = DB.OpenRecordset("select distinct * from ensembles where userENS = " + test.text) b = b + 1 Do While Not rs_ensemb.EOF c = "ensemble " & d Set n = TrvContact.Nodes.Add(a, tvwChild, c, rs_ensemb.Fields(0), 2) Set rs_prod = DB.OpenRecordset("select distinct * from produit, ensembles, regrouper where produit.desP=regrouper.desP and regrouper.desENS = ensembles.desENS and ensembles.desENS='" + rs_ensemb.Fields(0) + "';") d = d + 1 Do While Not rs_prod.EOF E = "produit " & f Set n = TrvContact.Nodes.Add(c, tvwChild, E, rs_prod.Fields(0), 2) Set rs_SE = DB.OpenRecordset("select distinct sous_ensembles.désigSE from sous_ensembles, contenir, produit, regrouper, ensembles Where regrouper.desP=produit.desP and regrouper.desENS = ensembles.desENS and contenir.désigSE=sous_ensembles.désigSE and contenir.desP=produit.desP and produit.desP = '" + rs_prod.Fields(0) + "';") f = f + 1 Do While Not rs_SE.EOF g = "sous-ensembles " & h Set n = TrvContact.Nodes.Add(E, tvwChild, g, rs_SE.Fields(0), 2) Set rs_mat = DB.OpenRecordset("select distinct base.Désignation_matériel From base, sous_ensembles, contenir, produit, avoir, regrouper, ensembles Where regrouper.desP=produit.desP and regrouper.desENS = ensembles.desENS and contenir.désigSE = sous_ensembles.désigSE And contenir.desP = produit.desP and avoir.désigSE=sous_ensembles.désigSE and avoir.Désignation_matériel= base.Désignation_matériel and sous_ensembles.désigSE = '" + rs_SE.Fields(0) + "';") h = h + 1 Do While Not rs_mat.EOF i = "matériaux " & j Set n = TrvContact.Nodes.Add(g, tvwChild, i, rs_mat.Fields(0), 2) j = j + 1 rs_mat.MoveNext Loop rs_SE.MoveNext Loop rs_prod.MoveNext Loop rs_ensemb.MoveNext Loop 'je passe à l'enregistrement suivant rs_user.MoveNext Loop
L'erreur venait enfaite du fait que je nommais automatiquement les sous parties et donc que s'il avait un doublons : ERREUR. J'ai donc forcer mon programme a donnée des nom "correct" ( hihihih) a mes sous parties.
J'espere que ce code peut aider des gens :)
Cordialement Guilty90
|
|
|
Cette discussion est classé dans : table, afficher, db, treeview, doublons
Répondre à ce message
Sujets en rapport avec ce message
SELECT...INNER JOIN [ par Bendes ]
J'arrive à faire un SELECT INNER JOIN entre deux tables d'une même base de données (Access 2000), mais comment faire ce SELECT sur une table d'une db
Comment afficher 2 champs d'une table dans un combobox déroulant [ par Jeronimo ]
Je veux que lorsque ma form load, tous les enregistrements NomEt et PrenomEt de ma table Etudiant apparaîssent dans un combobox déroulant. Je n'y arr
Comment afficher 2 champs d'une table dans un combobox déroulant [ par Jeronimo ]
Je veux que lorsque ma form load, tous les enregistrements NomEt et PrenomEt de ma table Etudiant apparaîssent dans un combobox déroulant. Je n'y arr
histoire de SELECT et de dé-concaténation [ par siham ]
salut a tous,j'ai 2 pb.Tout d'abord les requetes SELECT sous VBA ACCESS.le gestionnaire d'erreur me dis qu'il est impossible d'en executer. Je pense q
Help please! Comment integrer une table déja remplie dans une DB ? [ par Angelus ]
SalutMa question étant dans le topic, je voulais savoir sous VB comment je pouvais faire pour inserer une table remplie dans une base de données .cdb,
HELP : AFFICHER UN TREEVIEW [ par thehitman ]
Salut tt le monde,je cherche le code (ou l'algo) ki me permet d'afficher un treeview dont le nombre de niveau ainsi ke le nom des noeuds peuvent varie
comment afficher tt les enregistrement d'une table ? [ par topolino ]
comment afficher tt les enregistrement d'une table ?car pour l'instant je n'affiche qu'un seul nregistrement ds un champs c tout.moi ej les veux tous
pb pour mettre a jour la BDD [ par canard66 ]
Salut,g un pb car je souhaite modifier des enregistrements dans une BDD mais quand je le fais, il me dit soit que je ne peux pas car l'objet ne gere p
PBS POUR AFFICHER DES MENUS CONTEXTUELS DANS UNE TREEVIEW [ par thehitman ]
Hi, j'affiche un menu contextuel sur action du clic droit sur des objets dans une treeview. affichage sans pb du premier menu et plantage sur le secon
Treeview dans un formulaire Access [ par BasicInstinct ]
Slt @ tousJ'ai besoin de créer un treeview dans un formulaire Access ( Il doit me permettre de créer des requetes dynamiquement)exemple du treview : +
Livres en rapport
|
Téléchargements
Logiciels à télécharger sur le même thème :
|