OVH Cloud OVH Cloud

[WD75] COMBO' secours!!!!

5 réponses
Avatar
Roumegou Eric
Je veux utiliser le principe de la fenêtre de recherche des fenêtres
RAD Windev.
Avec les 2 plans, plan 1 critères de selection et plan 2, affichage en
table.
Impec pour ce dont j'ai besoin sauf ...

que je voudrais remplacer valeurTestée par une combo m'affichant les
valeurs distinctes que peut prendre cette rubrique.

donc j'ai passé la colonne en Combo.
j'ai fais cette petite fn
PROCEDURE ChargeValeurTestee()
Marequete est une Source de Données
ListeSupprimeTout(SelectEnreg.ValeurTestee)
HExécuteRequêteSQL(Marequete,"SELECT DISTINCT TAC_FAMILLE FROM
STAT_TAC")
// lecture du premier enregistrement de la requête
HLitPremier(Marequete)
TANTQUE PAS HEnDehors()
ListeAjoute(SelectEnreg.ValeurTestee,Marequete.TAC_FAMILLE)
HLitSuivant()
FIN

la table répond bien à mes attentes sauf que je ne sais pas comment
récupérer la valeur de cette combo au lieu de l'indice vu que c'est une
combo dans une table.
Le code RAD qui compose la requete
// Parcourir la table
TANTQUE nIndiceLigne <= SelectEnreg..Occurrence
// Si l'utilisateur a saisie une valeur de test
SI ValeurTestee[nIndiceLigne] <> "" ALORS
// Construire la rubrique sur laquelle se porte la condition
sRubrique = gfsFichier + "." + Rubrique[nIndiceLigne]

// Si l'utilisateur a saisi une autre valeur de test
SI AutreValeur[nIndiceLigne] = "" ALORS
// Définir la condition d'égalité
sEgalite(nIndiceLigne, sFiltre, sRubrique)
SINON
sDoubleCondition(nIndiceLigne, sFiltre, sRubrique)
FIN

// Construire la requête SQL avec les différentes conditions
sConstruitRequête(sFiltre, gfsConditionSélection)
FIN


donc c'est ValeurTestee[nIndiceLigne] qui ne me retourne pas la valeur
en clair. J'ai essayé ValeurTestee[ValeurTestee][nIndiceLigne] mais ça
plante.

help me please.




--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)

5 réponses

Avatar
[bernard]
Roumegou Eric a présenté l'énoncé suivant :
Je veux utiliser le principe de la fenêtre de recherche des fenêtres RAD
Windev.
Avec les 2 plans, plan 1 critères de selection et plan 2, affichage en table.
Impec pour ce dont j'ai besoin sauf ...

que je voudrais remplacer valeurTestée par une combo m'affichant les valeurs
distinctes que peut prendre cette rubrique.

donc j'ai passé la colonne en Combo.
j'ai fais cette petite fn
PROCEDURE ChargeValeurTestee()
Marequete est une Source de Données
ListeSupprimeTout(SelectEnreg.ValeurTestee)
HExécuteRequêteSQL(Marequete,"SELECT DISTINCT TAC_FAMILLE FROM STAT_TAC")
// lecture du premier enregistrement de la requête
HLitPremier(Marequete)
TANTQUE PAS HEnDehors()
ListeAjoute(SelectEnreg.ValeurTestee,Marequete.TAC_FAMILLE)
HLitSuivant()
FIN

la table répond bien à mes attentes sauf que je ne sais pas comment récupérer
la valeur de cette combo au lieu de l'indice vu que c'est une combo dans une
table.
Le code RAD qui compose la requete
// Parcourir la table
TANTQUE nIndiceLigne <= SelectEnreg..Occurrence
// Si l'utilisateur a saisie une valeur de test
SI ValeurTestee[nIndiceLigne] <> "" ALORS
// Construire la rubrique sur laquelle se porte la condition
sRubrique = gfsFichier + "." + Rubrique[nIndiceLigne]

// Si l'utilisateur a saisi une autre valeur de test
SI AutreValeur[nIndiceLigne] = "" ALORS
// Définir la condition d'égalité
sEgalite(nIndiceLigne, sFiltre, sRubrique)
SINON
sDoubleCondition(nIndiceLigne, sFiltre, sRubrique)
FIN

// Construire la requête SQL avec les différentes conditions
sConstruitRequête(sFiltre, gfsConditionSélection)
FIN


donc c'est ValeurTestee[nIndiceLigne] qui ne me retourne pas la valeur en
clair. J'ai essayé ValeurTestee[ValeurTestee][nIndiceLigne] mais ça plante.

help me please.



normalement, la valeur selectionné d'une combo dans une table peut se
faire avec la propriété valeur

bon courage !
@+++

--

Carpe Diem!
[bernard]
Avatar
Roumegou Eric
[bernard] a exprimé avec précision :
Roumegou Eric a présenté l'énoncé suivant :
Je veux utiliser le principe de la fenêtre de recherche des fenêtres RAD
Windev.
Avec les 2 plans, plan 1 critères de selection et plan 2, affichage en
table.
Impec pour ce dont j'ai besoin sauf ...

que je voudrais remplacer valeurTestée par une combo m'affichant les
valeurs distinctes que peut prendre cette rubrique.

donc j'ai passé la colonne en Combo.
j'ai fais cette petite fn
PROCEDURE ChargeValeurTestee()
Marequete est une Source de Données
ListeSupprimeTout(SelectEnreg.ValeurTestee)
HExécuteRequêteSQL(Marequete,"SELECT DISTINCT TAC_FAMILLE FROM STAT_TAC")
// lecture du premier enregistrement de la requête
HLitPremier(Marequete)
TANTQUE PAS HEnDehors()
ListeAjoute(SelectEnreg.ValeurTestee,Marequete.TAC_FAMILLE)
HLitSuivant()
FIN

la table répond bien à mes attentes sauf que je ne sais pas comment
récupérer la valeur de cette combo au lieu de l'indice vu que c'est une
combo dans une table.
Le code RAD qui compose la requete
// Parcourir la table
TANTQUE nIndiceLigne <= SelectEnreg..Occurrence
// Si l'utilisateur a saisie une valeur de test
SI ValeurTestee[nIndiceLigne] <> "" ALORS
// Construire la rubrique sur laquelle se porte la condition
sRubrique = gfsFichier + "." + Rubrique[nIndiceLigne]

// Si l'utilisateur a saisi une autre valeur de test
SI AutreValeur[nIndiceLigne] = "" ALORS
// Définir la condition d'égalité
sEgalite(nIndiceLigne, sFiltre, sRubrique)
SINON
sDoubleCondition(nIndiceLigne, sFiltre, sRubrique)
FIN

// Construire la requête SQL avec les différentes conditions
sConstruitRequête(sFiltre, gfsConditionSélection)
FIN


donc c'est ValeurTestee[nIndiceLigne] qui ne me retourne pas la valeur en
clair. J'ai essayé ValeurTestee[ValeurTestee][nIndiceLigne] mais ça plante.

help me please.



normalement, la valeur selectionné d'une combo dans une table peut se faire
avec la propriété valeur


Merci
je dirais meme plus avec la propriété valeurAffichée

donc ValeurTestee[nIndice]..ValeurAffichée

j'avance ... pas encore ça mais je ne dois plus en être très loin.


bon courage !
@+++




--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
Avatar
Roumegou Eric
Roumegou Eric vient de nous annoncer :
[bernard] a exprimé avec précision :
Roumegou Eric a présenté l'énoncé suivant :
Je veux utiliser le principe de la fenêtre de recherche des fenêtres RAD
Windev.
Avec les 2 plans, plan 1 critères de selection et plan 2, affichage en
table.
Impec pour ce dont j'ai besoin sauf ...

que je voudrais remplacer valeurTestée par une combo m'affichant les
valeurs distinctes que peut prendre cette rubrique.

donc j'ai passé la colonne en Combo.
j'ai fais cette petite fn
PROCEDURE ChargeValeurTestee()
Marequete est une Source de Données
ListeSupprimeTout(SelectEnreg.ValeurTestee)
HExécuteRequêteSQL(Marequete,"SELECT DISTINCT TAC_FAMILLE FROM STAT_TAC")
// lecture du premier enregistrement de la requête
HLitPremier(Marequete)
TANTQUE PAS HEnDehors()
ListeAjoute(SelectEnreg.ValeurTestee,Marequete.TAC_FAMILLE)
HLitSuivant()
FIN

la table répond bien à mes attentes sauf que je ne sais pas comment
récupérer la valeur de cette combo au lieu de l'indice vu que c'est une
combo dans une table.
Le code RAD qui compose la requete
// Parcourir la table
TANTQUE nIndiceLigne <= SelectEnreg..Occurrence
// Si l'utilisateur a saisie une valeur de test
SI ValeurTestee[nIndiceLigne] <> "" ALORS
// Construire la rubrique sur laquelle se porte la condition
sRubrique = gfsFichier + "." + Rubrique[nIndiceLigne]

// Si l'utilisateur a saisi une autre valeur de test
SI AutreValeur[nIndiceLigne] = "" ALORS
// Définir la condition d'égalité
sEgalite(nIndiceLigne, sFiltre, sRubrique)
SINON
sDoubleCondition(nIndiceLigne, sFiltre, sRubrique)
FIN

// Construire la requête SQL avec les différentes conditions
sConstruitRequête(sFiltre, gfsConditionSélection)
FIN


donc c'est ValeurTestee[nIndiceLigne] qui ne me retourne pas la valeur en
clair. J'ai essayé ValeurTestee[ValeurTestee][nIndiceLigne] mais ça
plante.

help me please.



normalement, la valeur selectionné d'une combo dans une table peut se faire
avec la propriété valeur


Merci
je dirais meme plus avec la propriété valeurAffichée

donc ValeurTestee[nIndice]..ValeurAffichée



ni ..valeurAffichée ni ..valeur

ça me gonfle !!!!! il paraît que la gestion des combos s'est améliorée
dans les versions suivantes ???

car là c'est vraiment couillesque !

A chaque fois que je veux partir sur du RAD pour gagner du temps, j'y
perds ma journée. Pas pour moi ce truc là !!!
Menfin ! c'est pourtant pas compliqué ce que je veux faire

une fenetre de type recherche. Je veux la possibilité de filtrer sur
une famille de stats (une dizaine de valeurs distinctes) pour ensuite
utiliser l'export excel de la table.

Mais je veux que l'utilsiateur est la liste des choix possibles... d'où
la combo.




j'avance ... pas encore ça mais je ne dois plus en être très loin.


bon courage !
@+++






--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
Avatar
mat
Roumegou Eric wrote:
Je veux utiliser le principe de la fenêtre de recherche des fenêtres RAD
Windev.
Avec les 2 plans, plan 1 critères de selection et plan 2, affichage en
table.
Impec pour ce dont j'ai besoin sauf ...

que je voudrais remplacer valeurTestée par une combo m'affichant les
valeurs distinctes que peut prendre cette rubrique.

donc j'ai passé la colonne en Combo.
j'ai fais cette petite fn
PROCEDURE ChargeValeurTestee()
Marequete est une Source de Données
ListeSupprimeTout(SelectEnreg.ValeurTestee)
HExécuteRequêteSQL(Marequete,"SELECT DISTINCT TAC_FAMILLE FROM STAT_TAC")
// lecture du premier enregistrement de la requête
HLitPremier(Marequete)
TANTQUE PAS HEnDehors()
ListeAjoute(SelectEnreg.ValeurTestee,Marequete.TAC_FAMILLE)
HLitSuivant()
FIN

la table répond bien à mes attentes sauf que je ne sais pas comment
récupérer la valeur de cette combo au lieu de l'indice vu que c'est une
combo dans une table.
Le code RAD qui compose la requete
// Parcourir la table
TANTQUE nIndiceLigne <= SelectEnreg..Occurrence
// Si l'utilisateur a saisie une valeur de test
SI ValeurTestee[nIndiceLigne] <> "" ALORS
// Construire la rubrique sur laquelle se porte la condition
sRubrique = gfsFichier + "." + Rubrique[nIndiceLigne]

// Si l'utilisateur a saisi une autre valeur de test
SI AutreValeur[nIndiceLigne] = "" ALORS
// Définir la condition d'égalité
sEgalite(nIndiceLigne, sFiltre, sRubrique)
SINON
sDoubleCondition(nIndiceLigne, sFiltre, sRubrique)
FIN

// Construire la requête SQL avec les différentes conditions
sConstruitRequête(sFiltre, gfsConditionSélection)
FIN


donc c'est ValeurTestee[nIndiceLigne] qui ne me retourne pas la valeur
en clair. J'ai essayé ValeurTestee[ValeurTestee][nIndiceLigne] mais ça
plante.




Bonjour Eric,

peut-être sans aucune importance, mais des fois Windev se refuse de
reconnaître des objets si on ne me pas le nom complet: dans ce cas
nomTable.nomCombo. En principe
maTable.maCombo[nIndiceLigne]..ValeurAffichée devrait marcher. Autre
solution, puisque les valuers sont "fixes": tu crées un array que tu
accèdes via la valeur retourné par la combo... :-)

En plus, ludo56 dit dans le forum de PCsoft qu'il faut le suivant pour
récupérer la valeur:
Table.ColonneCombo[nIndice][ListeSelect(Table.ColonneCombo)]..ValeurMémorisée

Salutations
Mat
Avatar
Roumegou Eric
mat a pensé très fort :
Roumegou Eric wrote:
Je veux utiliser le principe de la fenêtre de recherche des fenêtres RAD
Windev.
Avec les 2 plans, plan 1 critères de selection et plan 2, affichage en
table.
Impec pour ce dont j'ai besoin sauf ...

que je voudrais remplacer valeurTestée par une combo m'affichant les
valeurs distinctes que peut prendre cette rubrique.

donc j'ai passé la colonne en Combo.
j'ai fais cette petite fn
PROCEDURE ChargeValeurTestee()
Marequete est une Source de Données
ListeSupprimeTout(SelectEnreg.ValeurTestee)
HExécuteRequêteSQL(Marequete,"SELECT DISTINCT TAC_FAMILLE FROM STAT_TAC")
// lecture du premier enregistrement de la requête
HLitPremier(Marequete)
TANTQUE PAS HEnDehors()
ListeAjoute(SelectEnreg.ValeurTestee,Marequete.TAC_FAMILLE)
HLitSuivant()
FIN

la table répond bien à mes attentes sauf que je ne sais pas comment
récupérer la valeur de cette combo au lieu de l'indice vu que c'est une
combo dans une table.
Le code RAD qui compose la requete
// Parcourir la table
TANTQUE nIndiceLigne <= SelectEnreg..Occurrence
// Si l'utilisateur a saisie une valeur de test
SI ValeurTestee[nIndiceLigne] <> "" ALORS
// Construire la rubrique sur laquelle se porte la condition
sRubrique = gfsFichier + "." + Rubrique[nIndiceLigne]

// Si l'utilisateur a saisi une autre valeur de test
SI AutreValeur[nIndiceLigne] = "" ALORS
// Définir la condition d'égalité
sEgalite(nIndiceLigne, sFiltre, sRubrique)
SINON
sDoubleCondition(nIndiceLigne, sFiltre, sRubrique)
FIN

// Construire la requête SQL avec les différentes conditions
sConstruitRequête(sFiltre, gfsConditionSélection)
FIN


donc c'est ValeurTestee[nIndiceLigne] qui ne me retourne pas la valeur en
clair. J'ai essayé ValeurTestee[ValeurTestee][nIndiceLigne] mais ça plante.




Bonjour Eric,

peut-être sans aucune importance, mais des fois Windev se refuse de
reconnaître des objets si on ne me pas le nom complet: dans ce cas
nomTable.nomCombo. En principe maTable.maCombo[nIndiceLigne]..ValeurAffichée
devrait marcher. Autre solution, puisque les valuers sont "fixes": tu crées
un array que tu accèdes via la valeur retourné par la combo... :-)

En plus, ludo56 dit dans le forum de PCsoft qu'il faut le suivant pour
récupérer la valeur:
Table.ColonneCombo[nIndice][ListeSelect(Table.ColonneCombo)]..ValeurMémorisée



et bien ça ne s'invente pas !
Merci de ta réponse, cela pourra me servir une autre fois car je suis
parti sur une autre solution avec une table mémoire contenant les
valeurs.


Salutations
Mat




--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)