PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2025 → Indirection et SQL
Indirection et SQL
Débuté par lpiole, 29 déc. 2004 18:07 - 3 réponses
Posté le 29 décembre 2004 - 18:07
Bonjour et merci pour votre aide.

Je souhaite faire une simple requête qui me sélectionne les valeurs différentes d'un champ de ma table data. Ce champ est déterminée par une zone de liste.

HExécuteRequêteSQL(ReqDirection,"SELECT DISTINCT {zlmdirection..Valeuraffichée} FROM DATA order by {zlmdirection..Valeuraffichée}").

J'obtiens comme erreur : Erreur à la ligne 12 du traitement Clic sur Bouton1.
Vous avez appelé la fonction HLitDernier.
Fichier <ReqDirection> inconnu dans l'analyse <C:\Mes Projets\evalpost\EvalPost.wdd>.

La ligne 12 est juste : HLitDernier(ReqDirection).

La procédure fonctionne très bien quand j'écris en dur le nom de mon champ.
Posté le 29 décembre 2004 - 18:35
Essai plutot ça:

HExécuteRequêteSQL(ReqDirection,"SELECT DISTINCT {zlmdirection}..Valeuraffichée FROM DATA

Tu verras c'est beaucoup mieux. Bonne année
Posté le 29 décembre 2004 - 18:45
Une indirection ne fonctionne pas dans une chaine de caracteres

contruisez votre chaine a la main

chSQL est une chaine = "SELECT DISTINCT %1 FROM DATA order by %1"
ChSQL=remplace(chSQL,"%1",zlmdirection..Valeuraffichée)

( par exemple )

et si zlmdirection est le nom d'un champ alors
ChSQL=remplace(chSQL,"%1",{zlmdirection}..Valeuraffichée)

Laurent Piolé wrote:
Bonjour et merci pour votre aide.

Je souhaite faire une simple requête qui me sélectionne les valeurs différentes d'un champ de ma table data. Ce champ est déterminée par une zone de liste.

HExécuteRequêteSQL(ReqDirection,"SELECT DISTINCT {zlmdirection..Valeuraffichée} FROM DATA order by {zlmdirection..Valeuraffichée}").

J'obtiens comme erreur : Erreur à la ligne 12 du traitement Clic sur Bouton1.
Vous avez appelé la fonction HLitDernier.
Fichier <ReqDirection> inconnu dans l'analyse <C:\Mes Projets\evalpost\EvalPost.wdd>.

La ligne 12 est juste : HLitDernier(ReqDirection).

La procédure fonctionne très bien quand j'écris en dur le nom de mon champ.
Posté le 30 décembre 2004 - 10:00
Merci beaucoup pour vos réponses, très efficaces !

Bonne Année à tous !

Laurent