|
Iniciado por david, out., 04 2004 7:00 PM - 8 respostas |
| |
| | | |
|
| |
Publicado em outubro, 04 2004 - 7:00 PM |
Bonjour à tous, j'en appelle à votre aide. Je souhaite executer une requete avec comme paramètre une valeur se trouvant dans une branche d'un tree view. Le problème c'est que je n'arrive pas à récupérer cette valeur (chaine de caractères). Je suis ouvert à toutes vos propositons
D'avance merci |
| |
| |
| | | |
|
| | |
| |
Publicado em outubro, 04 2004 - 7:15 PM |
david a émis l'idée suivante :
Bonjour à tous, j'en appelle à votre aide. Je souhaite executer une requete avec comme paramètre une valeur se trouvant dans une branche d'un tree view. Le problème c'est que je n'arrive pas à récupérer cette valeur (chaine de caractères). Je suis ouvert à toutes vos propositons
D'avance merci
quand tu fais un arbre ajoute, tu spécifies un id qui peut être une clé fichier, ou une zone stockée dans une zone mémoire ArbreAjoute(tvw,Branche,icoOuv,icoOuv,wTVD_ID) dans cet ex, wTVD_ID est l'identifiant primaire d'une table Avec l'instruction qui suit, je récupère cet identifiant identArbre=ArbreRécupèreIdentifiant(tvw,ArbreSelect(tvw)) Libre à moi ensuite de lire un fichier ou une table
-- Eric Webmaster des Wtablettes www.wtablettes.net |
| |
| |
| | | |
|
| | |
| |
Publicado em outubro, 04 2004 - 7:27 PM |
Salut,
Pour récupérer la valeur du treeview, tu as 2 solutions:
La première est d'ajouter une ID au momment de l'exécution de la fonction ArbreAjoute() puis de récupérer cette valeur grâce à la fonction ArbreRécupèreIdentifiant(). C'est la solution la plus propre.
2ème solution, tu te débrouilles par le biais d'un simple ArbreSelect() puis tu traites la chaine de caractères reçue pour extraire la valeur qui t'intéresse (la fonction ExtraitChaine() peut être bien utile dans ce cas là...)
Bon dev'
Guillaume
Il se trouve que david a formulé :
Bonjour à tous, j'en appelle à votre aide. Je souhaite executer une requete avec comme paramètre une valeur se trouvant dans une branche d'un tree view. Le problème c'est que je n'arrive pas à récupérer cette valeur (chaine de caractères). Je suis ouvert à toutes vos propositons
D'avance merci
-- Guillaume |
| |
| |
| | | |
|
| | |
| |
Publicado em outubro, 05 2004 - 11:24 AM |
merci pour votre aide, mais j'ai toujours un pb (petit détail qui a son importance : je débute sous webdev!!!). Je n'obtient pas mon id
Voila mon code d'initialisation du treeview :
MONARBRE est une chaîne = "ARBRESERVICES"
ArbreStyleGlobal(ModeXP) ArbreCrée(MONARBRE,PAGEWW..Nom,BTPAGEAFF..Nom) ArbreAjoute(MONARBRE,"Services")
HLitPremier(Services_esic,IDServices_esic) TANTQUE PAS HEnDehors() HLitPremier(Etat_demande,IDEtat_demande) TANTQUE PAS HEnDehors() ArbreAjoute(MONARBRE, "Services"+TAB+Services_esic.NOM+TAB+Etat_demande.NOM,Image1,Image2,Services_esic.IDServices_esic) ArbreDéfinitAction(MONARBRE, "Services"+TAB+Services_esic.NOM,Bouton_requete_service..Nom,actionBouton) HLitSuivant(Etat_demande,IDEtat_demande) FIN HLitSuivant(Services_esic,IDServices_esic) FIN
ArbreDéroule(MONARBRE,"Services") ArbreAffiche(MONARBRE,CHPHTML..Nom)
Voila le code du bouton "Bouton_requete_service" :
identArbre est une chaîne // recherche
identArbre=ArbreRécupèreIdentifiant("monarbre",ArbreSelect("monarbre")) Info(identArbre)
Quand je clic sur un service de mon travail, j'aimerais récupérer son identifiant pour un traitement futur.
Encore merci pour votre aide |
| |
| |
| | | |
|
| | |
| |
Publicado em outubro, 05 2004 - 11:41 AM |
Salut,
Sans vouloir dire de bétise, il y a une petite coquille dans ton code...
david avait écrit le 05/10/2004 :
merci pour votre aide, mais j'ai toujours un pb (petit détail qui a son importance : je débute sous webdev!!!). Je n'obtient pas mon id Voila mon code d'initialisation du treeview : MONARBRE est une chaîne = "ARBRESERVICES" ArbreStyleGlobal(ModeXP) ArbreCrée(MONARBRE,PAGEWW..Nom,BTPAGEAFF..Nom) ArbreAjoute(MONARBRE,"Services")
Pour parenthèse la ligne précédente n'est pas forcément utile car le noeud "service" est créé dans les autres ArbreAjoute() que tu exécutes...
HLitPremier(Services_esic,IDServices_esic) TANTQUE PAS HEnDehors() HLitPremier(Etat_demande,IDEtat_demande) TANTQUE PAS HEnDehors() ArbreAjoute(MONARBRE, "Services"+TAB+Services_esic.NOM+TAB+Etat_demande.NOM,Image1,Image2,Services_esic.IDServices_esic)
Pour moi, ton problème se situe là: tu ne définit pas une action au même niveau que le noeud que tu viens de créer. (sauf si c'est ta volonté... tu as donné une ID au noeud "Services"+TAB+Services_esic.NOM+TAB+Etat_demande.NOM qui n'est pas le même que celui auquel tu ajoutes une action ligne suivante: "Services"+TAB+Services_esic.NOM .
ArbreDéfinitAction(MONARBRE, "Services"+TAB+Services_esic.NOM,Bouton_requete_service..Nom,actionBouton)
Donc, si je ne me trompe pas la dessus, tu devrais retomber sur tes pattes en veillant bien à ce que le noeud pour lequel tu définis une action est bien le même noeud que celui à qui tu as attribué une ID.
HLitSuivant(Etat_demande,IDEtat_demande) FIN HLitSuivant(Services_esic,IDServices_esic) FIN
ArbreDéroule(MONARBRE,"Services") ArbreAffiche(MONARBRE,CHPHTML..Nom)
Voila le code du bouton "Bouton_requete_service" :
identArbre est une chaîne // recherche
identArbre=ArbreRécupèreIdentifiant("monarbre",ArbreSelect("monarbre")) Info(identArbre)
Quand je clic sur un service de mon travail, j'aimerais récupérer son identifiant pour un traitement futur.
Encore merci pour votre aide
Tiens nous au courant
-- Guillaume |
| |
| |
| | | |
|
| | |
| |
Publicado em outubro, 05 2004 - 11:41 AM |
david a exprimé avec précision :
merci pour votre aide, mais j'ai toujours un pb (petit détail qui a son importance : je débute sous webdev!!!). Je n'obtient pas mon id Voila mon code d'initialisation du treeview : MONARBRE est une chaîne = "ARBRESERVICES" ArbreStyleGlobal(ModeXP) ArbreCrée(MONARBRE,PAGEWW..Nom,BTPAGEAFF..Nom) ArbreAjoute(MONARBRE,"Services")
HLitPremier(Services_esic,IDServices_esic) TANTQUE PAS HEnDehors() HLitPremier(Etat_demande,IDEtat_demande) TANTQUE PAS HEnDehors() ArbreAjoute(MONARBRE, "Services"+TAB+Services_esic.NOM+TAB+Etat_demande.NOM,Image1,Image2,Services_esic.IDServices_esic) ArbreDéfinitAction(MONARBRE, "Services"+TAB+Services_esic.NOM,Bouton_requete_service..Nom,actionBouton) HLitSuivant(Etat_demande,IDEtat_demande) FIN HLitSuivant(Services_esic,IDServices_esic)
j'suis pas spécialiste de HF (ne travaillant qu'en sql) mais là il me semble que tu auras plusieurs id de meme valeur ?? Essaie plutôt de composer une clé : Services_esic.IDServices_esic+"/"+IDEtat_demande Sinon cela me semble correct. Il faut que tu débuggues.
FIN
ArbreDéroule(MONARBRE,"Services") ArbreAffiche(MONARBRE,CHPHTML..Nom)
Voila le code du bouton "Bouton_requete_service" :
identArbre est une chaîne // recherche
identArbre=ArbreRécupèreIdentifiant("monarbre",ArbreSelect("monarbre")) pour récupérer avec mon ex cité plus haut ... monIdServ=extraitchaine(identarbre,1,"/") monIdEtat=extraitchaine(identarbre,2,"/")
Info(identArbre)
Quand je clic sur un service de mon travail, j'aimerais récupérer son identifiant pour un traitement futur.
Encore merci pour votre aide
-- Eric Webmaster des Wtablettes www.wtablettes.net |
| |
| |
| | | |
|
| | |
| |
Publicado em outubro, 05 2004 - 12:16 PM |
merci à vous deux mais là je craque !!! J'ai essayé vos deux méthodes mais rien n'y fait je ne récupère aucun identifiant. Pourtant lors de la création de l'arbre, il est bien ajouté !
Sinon Eric à titre d'info ce que tu as sur ton site c'est exactement ce que je cherche à faire.
Help ;=)) |
| |
| |
| | | |
|
| | |
| |
Publicado em outubro, 05 2004 - 12:59 PM |
david a utilisé son clavier pour écrire :
merci à vous deux mais là je craque !!! J'ai essayé vos deux méthodes mais rien n'y fait je ne récupère aucun identifiant. Pourtant lors de la création de l'arbre, il est bien ajouté !
Sinon Eric à titre d'info ce que tu as sur ton site c'est exactement ce que je cherche à faire.
je te donnerais bien l'algo, mais cela risque de t'embrouiller gravement car : - c'est écrit pour du mysql et en utilisant des classes - cela gère les notions de pere/fils.
Bref je veux bien te l'envoyer mais c'est pas l'exemple simple.
As tu une bonne vs du composant ? A titre d'info, il y en a un (légèrement amélioré) qui fn bien sur les wtablettes.
Help ;=))
-- Eric Webmaster des Wtablettes www.wtablettes.net |
| |
| |
| | | |
|
| | |
| |
Publicado em outubro, 05 2004 - 1:17 PM |
Essaye peut-être de créer un petit projet de test ou tu crée un Treeview simple dans lequel tu mets actions et identifiants... Ca t'aidera suremment à comprendre ton erreur et retomber sur tes pattes.. pour ne pas trop t'embêter, tu peux même (si tu as windev) faire un copier/coller du code exemple dans l'aide sur le treeview de WinDev et le modifier juste pour les fonctions arbreaffiche() et arbrecrée()...
Si tu n'y arrive pas encore après ça, n'hésites pas à nous redécrire un peu ton problème.
Dernière parenthèse, ton ID est un nombre? si c'est le cas, il faut bien penser que le ArbreRécupèreIdentifiant() te renvoie une chaine de caractères ! Il te faut donc écrire :
Resultat = val(ArbreRécupèreIdentifiant("MonArbre",ArbreSelect("MonArbre"))
Autre suggestion: Si par hasard ton identifiant est une chaine, vérifie bien qu'il n'y a pas de caractère ' dedans... Si c'est le cas, le ArbreAffiche s'emmèle les pinceaux (vu que c'est un caractère très utilisé en JS) et cela ne pourra fonctionner. Il faut alors prévoir de remplacer ce caractère avant le ArbreAjoute() au moyen d'un simple Remplace()
Bon courage
david a émis l'idée suivante :
merci à vous deux mais là je craque !!! J'ai essayé vos deux méthodes mais rien n'y fait je ne récupère aucun identifiant. Pourtant lors de la création de l'arbre, il est bien ajouté !
Sinon Eric à titre d'info ce que tu as sur ton site c'est exactement ce que je cherche à faire.
Help ;=))
-- Guillaume |
| |
| |
| | | |
|
| | | | |
| | |
|