Bonjour , je suis toujours en train de me prendre la t=EAte avec Windev,
oh j'ai surement pas fini :-)
J'aurai besoin d'un petit conseil pratique, c'est surtout pour mettre
en pratique ce que je lis dans le Guide WD, mais une fois transpos=E9
dans la r=E9alit=E9, je s=E8che ...
Soit un fichier membres :
-------------------------------------
Nom
prenom
Rue
NPA
Ville
et un fichier NPA :
--------------------------------------
NPA (Clef avec doublons)
Ville
Je voudrais au moment de la frappe du NPA dans la case ad-hoc de la
fichie du membre que la liste des villes qui correspondent a ce NPA se
charge dans un combo qui va recevoir la ville du fichier membres.
(il se peut que des petits hameaux aient le meme NPA) et que si une
seule ville existe, elle est inscrite dans le combo comme valeur de
celui-ci.
Comment feriez-vous cela ?
- au moment de l'=E9v=E8nement "sortie" du champ NPA =3D=3D> charger un
requete dans le combo ?
- un truc cach=E9 dans les m=E9andres de la fen=EAtre "Description..." ?
- autre chose ?=20
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Rick
a écrit :
Bonjour , je suis toujours en train de me prendre la tête avec Windev, oh j'ai surement pas fini :-)
J'aurai besoin d'un petit conseil pratique, c'est surtout pour mettre en pratique ce que je lis dans le Guide WD, mais une fois transposé dans la réalité, je sèche ...
Soit un fichier membres : ------------------------------------- Nom prenom Rue NPA Ville
et un fichier NPA : -------------------------------------- NPA (Clef avec doublons) Ville
Je voudrais au moment de la frappe du NPA dans la case ad-hoc de la fichie du membre que la liste des villes qui correspondent a ce NPA se charge dans un combo qui va recevoir la ville du fichier membres. (il se peut que des petits hameaux aient le meme NPA) et que si une seule ville existe, elle est inscrite dans le combo comme valeur de celui-ci.
Comment feriez-vous cela ? - au moment de l'évènement "sortie" du champ NPA ==> charger un requete dans le combo ? - un truc caché dans les méandres de la fenêtre "Description..." ? - autre chose ?
Merci d'avance
Amicalement
Marc
bonjour,
Test ceci :
sortie du champ NPA ==>
SI MoiMême..Modifié ET Taille(chNPA) >= 2 ALORS // Supprimer tous les enregistrements de la liste ListeSupprimeTout(chVille) // ta combo ville //
// Filtrer toutes les villes selon le code postal saisie dans chNPA SI HFiltre(NPA, NPA, chNPA+Caract(0), chCodePostal+Caract(255), "NPA ]='" + chNPA +"'" ) <> "" ALORS
// Lire le premier enregistrement trouvé HLitPremier(NPA)
// Initialiser le sablier Sablier()
TANTQUE PAS HEnDehors() // Ajouter les villes dans la combo chVille ListeAjoute(chVille, NPA.Ville)
// lire l'enregistrement suivant HLitSuivant(NPA) FIN
// Enlever le sablier Sablier(Faux)
SINON Info("Aucune ville ne correspond au code postal saisi") RepriseSaisie(chNPA) FIN FIN
@++
mtournier@romandie.com a écrit :
Bonjour , je suis toujours en train de me prendre la tête avec Windev,
oh j'ai surement pas fini :-)
J'aurai besoin d'un petit conseil pratique, c'est surtout pour mettre
en pratique ce que je lis dans le Guide WD, mais une fois transposé
dans la réalité, je sèche ...
Soit un fichier membres :
-------------------------------------
Nom
prenom
Rue
NPA
Ville
et un fichier NPA :
--------------------------------------
NPA (Clef avec doublons)
Ville
Je voudrais au moment de la frappe du NPA dans la case ad-hoc de la
fichie du membre que la liste des villes qui correspondent a ce NPA se
charge dans un combo qui va recevoir la ville du fichier membres.
(il se peut que des petits hameaux aient le meme NPA) et que si une
seule ville existe, elle est inscrite dans le combo comme valeur de
celui-ci.
Comment feriez-vous cela ?
- au moment de l'évènement "sortie" du champ NPA ==> charger un
requete dans le combo ?
- un truc caché dans les méandres de la fenêtre "Description..." ?
- autre chose ?
Merci d'avance
Amicalement
Marc
bonjour,
Test ceci :
sortie du champ NPA ==>
SI MoiMême..Modifié ET Taille(chNPA) >= 2 ALORS
// Supprimer tous les enregistrements de la liste
ListeSupprimeTout(chVille) // ta combo ville //
// Filtrer toutes les villes selon le code postal saisie dans chNPA
SI HFiltre(NPA, NPA, chNPA+Caract(0), chCodePostal+Caract(255),
"NPA ]='" + chNPA +"'" ) <> "" ALORS
// Lire le premier enregistrement trouvé
HLitPremier(NPA)
// Initialiser le sablier
Sablier()
TANTQUE PAS HEnDehors()
// Ajouter les villes dans la combo chVille
ListeAjoute(chVille, NPA.Ville)
// lire l'enregistrement suivant
HLitSuivant(NPA)
FIN
// Enlever le sablier
Sablier(Faux)
SINON
Info("Aucune ville ne correspond au code postal saisi")
RepriseSaisie(chNPA)
FIN
FIN
Bonjour , je suis toujours en train de me prendre la tête avec Windev, oh j'ai surement pas fini :-)
J'aurai besoin d'un petit conseil pratique, c'est surtout pour mettre en pratique ce que je lis dans le Guide WD, mais une fois transposé dans la réalité, je sèche ...
Soit un fichier membres : ------------------------------------- Nom prenom Rue NPA Ville
et un fichier NPA : -------------------------------------- NPA (Clef avec doublons) Ville
Je voudrais au moment de la frappe du NPA dans la case ad-hoc de la fichie du membre que la liste des villes qui correspondent a ce NPA se charge dans un combo qui va recevoir la ville du fichier membres. (il se peut que des petits hameaux aient le meme NPA) et que si une seule ville existe, elle est inscrite dans le combo comme valeur de celui-ci.
Comment feriez-vous cela ? - au moment de l'évènement "sortie" du champ NPA ==> charger un requete dans le combo ? - un truc caché dans les méandres de la fenêtre "Description..." ? - autre chose ?
Merci d'avance
Amicalement
Marc
bonjour,
Test ceci :
sortie du champ NPA ==>
SI MoiMême..Modifié ET Taille(chNPA) >= 2 ALORS // Supprimer tous les enregistrements de la liste ListeSupprimeTout(chVille) // ta combo ville //
// Filtrer toutes les villes selon le code postal saisie dans chNPA SI HFiltre(NPA, NPA, chNPA+Caract(0), chCodePostal+Caract(255), "NPA ]='" + chNPA +"'" ) <> "" ALORS
// Lire le premier enregistrement trouvé HLitPremier(NPA)
// Initialiser le sablier Sablier()
TANTQUE PAS HEnDehors() // Ajouter les villes dans la combo chVille ListeAjoute(chVille, NPA.Ville)
// lire l'enregistrement suivant HLitSuivant(NPA) FIN
// Enlever le sablier Sablier(Faux)
SINON Info("Aucune ville ne correspond au code postal saisi") RepriseSaisie(chNPA) FIN FIN
@++
mtournier
merci pour ta réponse, j'ai fais un test avec ton code comme base.
Mais il y a un truc bizzare, si je lance la fenêtre pour un test , tout va bien. par contre si je lance le projet, que je vais voir une des fenêtres RAD de clients et que je retourne dans ma fenêtre de test , j'ai beau mettre n'importe quel NPA , dans la combo j'ai la liste de toutes les Villes !!
J'ai un peu modifié le filtre pour que la sélection se fasse sur la liste des villes déja introduites dans le fichier clients. Je n'ai pas trouvé comment supprimer les doublons mais se sera pour la suite ...
Marc
Mon code :
ListeSupprimeTout(ville)
SI HFiltre(CLIENT, "codepostal ='" + CodePostal..Valeur +"'" ) <> "" ALORS
// Lire le premier enregistrement trouvé
HLitPremier(CLIENT)
// Initialiser le sablier Sablier()
TANTQUE PAS HEnDehors() // Ajouter les villes dans la combo chVille ListeAjoute(ville, CLIENT.Ville)
// lire l'enregistrement suivant HLitSuivant(CLIENT) FIN
// Enlever le sablier Sablier(Faux)
FIN
merci pour ta réponse, j'ai fais un test avec ton code comme base.
Mais il y a un truc bizzare, si je lance la fenêtre pour un test ,
tout va bien.
par contre si je lance le projet, que je vais voir une des fenêtres
RAD de clients et que je retourne dans ma fenêtre de test , j'ai beau
mettre n'importe quel NPA , dans la combo j'ai la liste de toutes les
Villes !!
J'ai un peu modifié le filtre pour que la sélection se fasse sur la
liste des villes déja introduites dans le fichier clients. Je n'ai pas
trouvé comment supprimer les doublons mais se sera pour la suite ...
Marc
Mon code :
ListeSupprimeTout(ville)
SI HFiltre(CLIENT, "codepostal ='" + CodePostal..Valeur +"'" ) <> ""
ALORS
// Lire le premier enregistrement trouvé
HLitPremier(CLIENT)
// Initialiser le sablier
Sablier()
TANTQUE PAS HEnDehors()
// Ajouter les villes dans la combo chVille
ListeAjoute(ville, CLIENT.Ville)
// lire l'enregistrement suivant
HLitSuivant(CLIENT)
FIN
merci pour ta réponse, j'ai fais un test avec ton code comme base.
Mais il y a un truc bizzare, si je lance la fenêtre pour un test , tout va bien. par contre si je lance le projet, que je vais voir une des fenêtres RAD de clients et que je retourne dans ma fenêtre de test , j'ai beau mettre n'importe quel NPA , dans la combo j'ai la liste de toutes les Villes !!
J'ai un peu modifié le filtre pour que la sélection se fasse sur la liste des villes déja introduites dans le fichier clients. Je n'ai pas trouvé comment supprimer les doublons mais se sera pour la suite ...
Marc
Mon code :
ListeSupprimeTout(ville)
SI HFiltre(CLIENT, "codepostal ='" + CodePostal..Valeur +"'" ) <> "" ALORS
// Lire le premier enregistrement trouvé
HLitPremier(CLIENT)
// Initialiser le sablier Sablier()
TANTQUE PAS HEnDehors() // Ajouter les villes dans la combo chVille ListeAjoute(ville, CLIENT.Ville)
// lire l'enregistrement suivant HLitSuivant(CLIENT) FIN
// Enlever le sablier Sablier(Faux)
FIN
mtournier
Je me réponds a moi même , c'est bon signe :-)
Que pensez-vous de cette solution (voir ci-dessous) , auriez-vous fait encore autrement ? J'ai toujours eu l'habitude de bosser avec les recordsets de VB ( Source de données en WD) , y'a t'il des contre-indications a les utiliser sous WD. Je dois avouer que je me sents a l'aise avec cette facon de faire ...
Marc
// code postal est un champ texte et ville un combo
n est un entier n = 0
SI CodePostal..Valeur<> "" ALORS
MaVue est une Source de Données ListeSupprimeTout(ville) HExécuteRequêteSQL(MaVue, "SELECT ville FROM CLIENT where CodePostal='" + CodePostal..Valeur + "' group by ville") n = HNbEnr(MaVue) HLitPremier(MaVue) TANTQUE HEnDehors(MaVue)= Faux ListeAjoute(ville,MaVue.Ville) HLitSuivant(MaVue) FIN
SI n = 1 ALORS ville..Valeur = MaVue.ville SINON SI n> 1 ALORS ComboOuvre(ville) FIN RepriseSaisie(ville) HDétruitVue(MaVue) FIN
Je me réponds a moi même , c'est bon signe :-)
Que pensez-vous de cette solution (voir ci-dessous) , auriez-vous fait
encore autrement ?
J'ai toujours eu l'habitude de bosser avec les recordsets de VB (
Source de données en WD) , y'a t'il des contre-indications a les
utiliser sous WD. Je dois avouer que je me sents a l'aise avec cette
facon de faire ...
Marc
// code postal est un champ texte et ville un combo
n est un entier
n = 0
SI CodePostal..Valeur<> "" ALORS
MaVue est une Source de Données
ListeSupprimeTout(ville)
HExécuteRequêteSQL(MaVue, "SELECT ville FROM CLIENT where
CodePostal='" + CodePostal..Valeur + "' group by ville")
n = HNbEnr(MaVue)
HLitPremier(MaVue)
TANTQUE HEnDehors(MaVue)= Faux
ListeAjoute(ville,MaVue.Ville)
HLitSuivant(MaVue)
FIN
SI n = 1 ALORS
ville..Valeur = MaVue.ville
SINON SI n> 1 ALORS
ComboOuvre(ville)
FIN
RepriseSaisie(ville)
HDétruitVue(MaVue)
FIN
Que pensez-vous de cette solution (voir ci-dessous) , auriez-vous fait encore autrement ? J'ai toujours eu l'habitude de bosser avec les recordsets de VB ( Source de données en WD) , y'a t'il des contre-indications a les utiliser sous WD. Je dois avouer que je me sents a l'aise avec cette facon de faire ...
Marc
// code postal est un champ texte et ville un combo
n est un entier n = 0
SI CodePostal..Valeur<> "" ALORS
MaVue est une Source de Données ListeSupprimeTout(ville) HExécuteRequêteSQL(MaVue, "SELECT ville FROM CLIENT where CodePostal='" + CodePostal..Valeur + "' group by ville") n = HNbEnr(MaVue) HLitPremier(MaVue) TANTQUE HEnDehors(MaVue)= Faux ListeAjoute(ville,MaVue.Ville) HLitSuivant(MaVue) FIN
SI n = 1 ALORS ville..Valeur = MaVue.ville SINON SI n> 1 ALORS ComboOuvre(ville) FIN RepriseSaisie(ville) HDétruitVue(MaVue) FIN
Eric Demeester
dans (in) fr.comp.developpement.agl.windev, ecrivait (wrote) :
Bonjour Marc,
Soit un fichier membres : ------------------------------------- Nom prenom Rue NPA Ville
et un fichier NPA : -------------------------------------- NPA (Clef avec doublons) Ville
Je voudrais au moment de la frappe du NPA dans la case ad-hoc de la fichie du membre que la liste des villes qui correspondent a ce NPA se charge dans un combo qui va recevoir la ville du fichier membres. (il se peut que des petits hameaux aient le meme NPA) et que si une seule ville existe, elle est inscrite dans le combo comme valeur de celui-ci.
Comment feriez-vous cela ?
Personnellement, je ferais un rafraichissement de la combo dans le code « à chaque modification ».
Amicalement,
-- Eric
dans (in) fr.comp.developpement.agl.windev, mtournier@romandie.com
ecrivait (wrote) :
Bonjour Marc,
Soit un fichier membres :
-------------------------------------
Nom
prenom
Rue
NPA
Ville
et un fichier NPA :
--------------------------------------
NPA (Clef avec doublons)
Ville
Je voudrais au moment de la frappe du NPA dans la case ad-hoc de la
fichie du membre que la liste des villes qui correspondent a ce NPA se
charge dans un combo qui va recevoir la ville du fichier membres.
(il se peut que des petits hameaux aient le meme NPA) et que si une
seule ville existe, elle est inscrite dans le combo comme valeur de
celui-ci.
Comment feriez-vous cela ?
Personnellement, je ferais un rafraichissement de la combo dans le code
« à chaque modification ».
dans (in) fr.comp.developpement.agl.windev, ecrivait (wrote) :
Bonjour Marc,
Soit un fichier membres : ------------------------------------- Nom prenom Rue NPA Ville
et un fichier NPA : -------------------------------------- NPA (Clef avec doublons) Ville
Je voudrais au moment de la frappe du NPA dans la case ad-hoc de la fichie du membre que la liste des villes qui correspondent a ce NPA se charge dans un combo qui va recevoir la ville du fichier membres. (il se peut que des petits hameaux aient le meme NPA) et que si une seule ville existe, elle est inscrite dans le combo comme valeur de celui-ci.
Comment feriez-vous cela ?
Personnellement, je ferais un rafraichissement de la combo dans le code « à chaque modification ».
Amicalement,
-- Eric
Deg
avait écrit le 04/11/2005 :
Je me réponds a moi même , c'est bon signe :-)
Que pensez-vous de cette solution (voir ci-dessous) , auriez-vous fait encore autrement ? J'ai toujours eu l'habitude de bosser avec les recordsets de VB ( Source de données en WD) , y'a t'il des contre-indications a les utiliser sous WD. Je dois avouer que je me sents a l'aise avec cette facon de faire ...
Marc
// code postal est un champ texte et ville un combo
n est un entier n = 0
SI CodePostal..Valeur<> "" ALORS
MaVue est une Source de Données ListeSupprimeTout(ville) HExécuteRequêteSQL(MaVue, "SELECT ville FROM CLIENT where CodePostal='" + CodePostal..Valeur + "' group by ville") n = HNbEnr(MaVue) HLitPremier(MaVue) TANTQUE HEnDehors(MaVue)= Faux ListeAjoute(ville,MaVue.Ville) HLitSuivant(MaVue) FIN
SI n = 1 ALORS ville..Valeur = MaVue.ville SINON SI n> 1 ALORS ComboOuvre(ville) FIN RepriseSaisie(ville)
a priori ceci va empêcher l'exécution de la suite ... mieux vaudrait un ecranpremier je pense...
HDétruitVue(MaVue) FIN
sinon pour l'utilisation des sources de données, je ne saurais dire dslé
-- ôter les "_" pour me répondre en privé
mtournier@romandie.com avait écrit le 04/11/2005 :
Je me réponds a moi même , c'est bon signe :-)
Que pensez-vous de cette solution (voir ci-dessous) , auriez-vous fait
encore autrement ?
J'ai toujours eu l'habitude de bosser avec les recordsets de VB (
Source de données en WD) , y'a t'il des contre-indications a les
utiliser sous WD. Je dois avouer que je me sents a l'aise avec cette
facon de faire ...
Marc
// code postal est un champ texte et ville un combo
n est un entier
n = 0
SI CodePostal..Valeur<> "" ALORS
MaVue est une Source de Données
ListeSupprimeTout(ville)
HExécuteRequêteSQL(MaVue, "SELECT ville FROM CLIENT where
CodePostal='" + CodePostal..Valeur + "' group by ville")
n = HNbEnr(MaVue)
HLitPremier(MaVue)
TANTQUE HEnDehors(MaVue)= Faux
ListeAjoute(ville,MaVue.Ville)
HLitSuivant(MaVue)
FIN
SI n = 1 ALORS
ville..Valeur = MaVue.ville
SINON SI n> 1 ALORS
ComboOuvre(ville)
FIN
RepriseSaisie(ville)
a priori ceci va empêcher l'exécution de la suite ... mieux vaudrait un
ecranpremier je pense...
HDétruitVue(MaVue)
FIN
sinon pour l'utilisation des sources de données, je ne saurais dire
dslé
Que pensez-vous de cette solution (voir ci-dessous) , auriez-vous fait encore autrement ? J'ai toujours eu l'habitude de bosser avec les recordsets de VB ( Source de données en WD) , y'a t'il des contre-indications a les utiliser sous WD. Je dois avouer que je me sents a l'aise avec cette facon de faire ...
Marc
// code postal est un champ texte et ville un combo
n est un entier n = 0
SI CodePostal..Valeur<> "" ALORS
MaVue est une Source de Données ListeSupprimeTout(ville) HExécuteRequêteSQL(MaVue, "SELECT ville FROM CLIENT where CodePostal='" + CodePostal..Valeur + "' group by ville") n = HNbEnr(MaVue) HLitPremier(MaVue) TANTQUE HEnDehors(MaVue)= Faux ListeAjoute(ville,MaVue.Ville) HLitSuivant(MaVue) FIN
SI n = 1 ALORS ville..Valeur = MaVue.ville SINON SI n> 1 ALORS ComboOuvre(ville) FIN RepriseSaisie(ville)
a priori ceci va empêcher l'exécution de la suite ... mieux vaudrait un ecranpremier je pense...
HDétruitVue(MaVue) FIN
sinon pour l'utilisation des sources de données, je ne saurais dire dslé