|
| Iniciado por Samuel, 09,ago. 2019 09:08 - 8 respuestas |
| |
| | | |
|
| |
Miembro registrado 9 mensajes |
|
| Publicado el 09,agosto 2019 - 09:08 |
Bonjour,
Je me permets de re-mettre en ligne ce sujet, car il n'avais pas recu assez d'attention. J'ai une table de données qui ressemble à ceci.

J'ai fait une requête sur cette table, de la forme : SELECT * FROM LX03 WHERE Article={ParamArticle}
Lorsque ParamArticle = << vide >> (une valeur présente dans ma table, avec des lettres), les enregistrements sont bien retournés.

En revanche, lorsque ParamArticle est égal à une suite de chiffres (comme c'est souvent le cas dans la table), ma requête ne renvoit rien ! (par exemple avec 226834: aucun enregistrement ne correspond à ma requête).
J'ai directement copié / collé cette valeur depuis WDMap, aucune possibilité de faute de frappe. Je teste ma requête directement dans l'éditeur de requetes, donc aucun code n'est à vérifier. Juste un clic droit sur ma requête, tester la requête et on remplit les paramètres.
Pourquoi Windev ne renvoie rien, et surtout, comment le corriger?
Merci, Samuel |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 961 mensajes |
|
| Publicado el 09,agosto 2019 - 10:24 |
Bonjour Samuel,
Comment est la partie du code WL qui exécute la requête ?
Quand tu testes avec l'éditeur de requête tout fonctionne bien ?
Cordialement
OB |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 9 mensajes |
|
| Publicado el 09,agosto 2019 - 10:31 |
obtuli a écrit :
Bonjour Samuel,
Comment est la partie du code WL qui exécute la requête ?
Quand tu testes avec l'éditeur de requête tout fonctionne bien ?
Cordialement
OB obtuli a écrit :
Bonjour Samuel,
Comment est la partie du code WL qui exécute la requête ?
Quand tu testes avec l'éditeur de requête tout fonctionne bien ?
Cordialement
OB
Justement, je n'exécute pas cette requête via du code. C'est uniquement via l'éditeur de requêtes que je l'utilise. Je ne l'ai pas encore implantée, j'aimerais bien qu'elle fonctionne avant... |
| |
| |
| | | |
|
| | |
| |
| Publicado el 09,agosto 2019 - 11:07 |
Bonjour,
Avez-vous pensé à mettre vos chiffres entre doubles-quottes ? En effet <<vide>> est du texte, les chiffres représentant le code article doivent être transmis de cette façon. |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 166 mensajes |
|
| Publicado el 09,agosto 2019 - 11:43 |
Bonjour;
Les tailles des valeurs de la rubrique "Article" sont différentes ou = 8 caractères ?
quel est le résultat avec l'exemple Article = 20000479 celui qu'on voit sur la première photo.
Bon Dev. |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 9 mensajes |
|
| Publicado el 09,agosto 2019 - 14:16 |
Fouedusa a écrit :
Bonjour;
Les tailles des valeurs de la rubrique "Article" sont différentes ou = 8 caractères ?
quel est le résultat avec l'exemple Article = 20000479 celui qu'on voit sur la première photo.
Bon Dev.
La taille de la rubrique Article est égale à 25 caractères.
Le résultat avec 20000479 est le même : aucun enregistrement ne correspond.
Didier ANTHEAUME a écrit :
Bonjour,
Avez-vous pensé à mettre vos chiffres entre doubles-quottes ? En effet <<vide>> est du texte, les chiffres représentant le code article doivent être transmis de cette façon.
En écrivant dans ma requete : "20000479", rien ne change. Toujours aucun enregistrement. Merci, Samuel. |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 1.640 mensajes |
|
| Publicado el 09,agosto 2019 - 14:48 |
Alors c'est qu'il manque des caractères, des espaces, caractères spéciaux qu'on ne voit pas ?
Fait un :
HLitPremier(LX03) TANTQUE PAS HEnDehors(LX03) Trace(LX03.Article+"("+Taille(LX03.Articles)+")) Hlitsuivant(LX03) FIN Et vérifie si la taille de chaines de caractères correspondent bien a ce que tu vois.
Ou mieux encore, Met un point d'arret sur TRACE() et regarde dans le debugger le contenu de LX03.Mensaje modificado, 09,agosto 2019 - 14:49 |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 4.361 mensajes |
|
| Publicado el 09,agosto 2019 - 16:39 |
Bonjour, 1-Le problème est-il le même avec le CCHF ? 2-Qu'affiche la fenêtre de trace pour le code suivant ?
REQ_Test est une Requête SQL = [ SELECT * FROM LX03 WHERE Article={pArticle} ] REQ_Test.pArticle="20000479" HExécuteRequête(REQ_Test) Trace("Nb d'enregistrements trouvés pour l'article 20000479 : "+HNbEnr(REQ_Test))
REQ_REQ_Test.pArticle=Null HExécuteRequête(REQ_Test) Trace("Nb d'enregistrements trouvés pour l'ensemble des articles : "+HNbEnr(REQ_Test))
-- Il y a peut être plus simple, mais, ça tourneMensaje modificado, 09,agosto 2019 - 16:41 |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 9 mensajes |
|
| Publicado el 12,agosto 2019 - 10:20 |
Merci à François, qui a trouvé la solution! Certains caractères étaient invisibles, et aucun moyen via windev de les voir! J'ai donc adapté ma requête SQL en fonction de cela. MErci à tous ! |
| |
| |
| | | |
|
| | | | |
| | |
|