PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Requête SQL
Requête SQL
Débuté par jplucien, 27 nov. 2005 18:06 - 3 réponses
Posté le 27 novembre 2005 - 18:06
Je ne comprends pas ce qui fonctionne pas dans ce code (l'enregistrement pourtant existant dans le fichier n'est pas flagué)
Il n'y a pas de message d'erreur:

MONARTICLE est une chaîne = "V8047259-01"
MONLOT est une chaîne = "52135"

strSQL est une chaîne
strSQL = "SELECT LISTES.Article AS Article, LISTES.Lot AS Lot FROM LISTES WHERE LISTES.Article = '" + MONARTICLE + "' AND LISTES.Lot = '" + MONLOT + "'"
MAREQ est une Source de Données



// ======================================== '
// EXECUTION DE LA REQUETE DE SELECTION SQL '
// ======================================== '
HExécuteRequêteSQL(MAREQ,hRequêteDéfaut+hModifieFichier,strSQL)
SI HTrouve(MAREQ) ALORS
HLitPremier(MAREQ,Article,hBlocageNon)
MAREQ.flage = "1"
HModifie(MAREQ,hNumEnrEnCours)
FIN

TableAffiche(TBL_LISTE,taRéExecuteRequete)

Merci de votre aide
Posté le 27 novembre 2005 - 23:00
bonsoir,

Essaie :

HExécuteRequêteSQL(MAREQ,hRequêteDéfaut+hModifieFichier,strSQL)
si Hnbenr(MAREQ) >0 alors
//' SI HTrouve(MAREQ) ALORS
HLitPremier(MAREQ,Article,hBlocageNon)
MAREQ.flage = "1"
HModifie(MAREQ,hNumEnrEnCours)
FIN

Tiens nous au courant.


"Jean Philippe Lucien" <jplucien@free.fr> a écrit dans le message de news:
4389e149$1@news.pcsoft.fr...

Je ne comprends pas ce qui fonctionne pas dans ce code (l'enregistrement
pourtant existant dans le fichier n'est pas flagué)
Il n'y a pas de message d'erreur:

MONARTICLE est une chaîne = "V8047259-01"
MONLOT est une chaîne = "52135"

strSQL est une chaîne
strSQL = "SELECT LISTES.Article AS Article, LISTES.Lot AS Lot FROM LISTES
WHERE LISTES.Article = '" + MONARTICLE + "' AND LISTES.Lot = '" + MONLOT
+ "'"
MAREQ est une Source de Données



// ======================================== '
// EXECUTION DE LA REQUETE DE SELECTION SQL '
// ======================================== '
HExécuteRequêteSQL(MAREQ,hRequêteDéfaut+hModifieFichier,strSQL)
SI HTrouve(MAREQ) ALORS
HLitPremier(MAREQ,Article,hBlocageNon)
MAREQ.flage = "1"
HModifie(MAREQ,hNumEnrEnCours)
FIN

TableAffiche(TBL_LISTE,taRéExecuteRequete)

Merci de votre aide
Posté le 28 novembre 2005 - 17:16
Merci de ta solution. Dans l'exécution de la requête le nombre d'enregistrements retourné est de 8. Donc la requête s'exécute. Par contre, hlitpremier(... retourne une erreur:

Erreur à la ligne 23 du traitement Clic sur Bouton4.
Vous avez appelé la fonction HLitPremier.
Il n'existe pas de rubrique <V8047259-01> dans le fichier <MaReq>.


**********************************************

Informations techniques

Projet : Saisie de l'inventaire

Dump de l'erreur du module <WD90HF.DLL> <9.00Df>.

- Appel WL :
Traitement de <frmDEBUT.Bouton4>, ligne <23>, thread <0>
Fonction <HLitPremier>, n° de syntaxe <1>

- Niveau : erreur fatale (EL_FATAL)

- Code erreur : 70202

- Code erreur WD55 : 202

- Pas de code d'erreur système

- Pas de message d'erreur système

- Que s'est-il passé ?
Il n'existe pas de rubrique <V8047259-01> dans le fichier <MaReq>.

***********************************************
Qu'est-ce qui peut bien clocher?

Merci de vos suggestions,

Bien cordialement
Posté le 28 novembre 2005 - 20:20
Bonsoir,
Normal,

HExécuteRequêteSQL(MAREQ,hRequêteDéfaut+hModifieFichier,strSQL)
si Hnbenr(MAREQ) >0 alors
//' SI HTrouve(MAREQ) ALORS
// HLitPremier(MAREQ,Article,hBlocageNon)
HLitPremier(MAREQ,"Article",hBlocageNon)
MAREQ.flage = "1"
HModifie(MAREQ,hNumEnrEnCours)
FIN


"Jean Philippe Lucien" <jplucien@free.fr> a écrit dans le message de news:
438b271b@news.pcsoft.fr...



Merci de ta solution. Dans l'exécution de la requête le nombre
d'enregistrements retourné est de 8. Donc la requête s'exécute. Par
contre, hlitpremier(... retourne une erreur:

Erreur à la ligne 23 du traitement Clic sur Bouton4.
Vous avez appelé la fonction HLitPremier.
Il n'existe pas de rubrique <V8047259-01> dans le fichier <MaReq>.


**********************************************

Informations techniques

Projet : Saisie de l'inventaire

Dump de l'erreur du module <WD90HF.DLL> <9.00Df>.

- Appel WL :
Traitement de <frmDEBUT.Bouton4>, ligne <23>, thread <0>
Fonction <HLitPremier>, n° de syntaxe <1>

- Niveau : erreur fatale (EL_FATAL)

- Code erreur : 70202

- Code erreur WD55 : 202

- Pas de code d'erreur système

- Pas de message d'erreur système

- Que s'est-il passé ?
Il n'existe pas de rubrique <V8047259-01> dans le fichier <MaReq>.

***********************************************
Qu'est-ce qui peut bien clocher?

Merci de vos suggestions,

Bien cordialement