PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Pb de Selection au niveau d'une Requete paramétrable
Pb de Selection au niveau d'une Requete paramétrable
Débuté par IDRI, 10 mai 2006 19:19 - 5 réponses
Posté le 10 mai 2006 - 19:19
Bonjour

J'ai une fenetre ou je saisie les Paramétres de Selection :
- Code Sté
- PériodeDébut
- PériodeFin
Sur la fenetre j'ai un Bouton ( GENERER ) , dans le code : CLIC SUR BTN_BOUTON,
le lance l'exécution d'une Requete, qui devrait sélectionner,en fonction des Paramétres
saisies auparavant, des Enregistrements à partir d'un Fichier ( FICH1 ) et les ecrire dans
un autre fichier ( FICH2 ).

Probléme:
-----------
1) Qauand je met :
--------------------
HExécuteRequête(REQ_GENERE)
- Il me génere tous les Enregistrements du Fichier ( FICH1 ), sans tenir
compte des paramétres de selection.

2) Quand je met :
--------------------
HExécuteRequête (REQ_GENERE),hRequêteDéfaut,wcodeste,PériodeDébut,PériodeFin)
- Il ne génére aucun Enregistrement.

VOTRE AIDE S.V.P
MERCI D'AVANCE
Posté le 10 mai 2006 - 21:26
req_genere.moncode (le nom en fonction des variables que tu as défini dans
ta requête)=wcodeste attention si c'est du texte de ne pas avoir de
caractère blanc
req_genere.datedebut=periodedebut attention que période début soit bien une
variable de type date sinon la transformer en date
idem pour ton troisième paramètre


"IDRI" <taibi_idri@hotmail.com> a écrit dans le message de news:
446203b2$1@news.pcsoft.fr...


Bonjour

J'ai une fenetre ou je saisie les Paramétres de Selection :
- Code Sté
- PériodeDébut
- PériodeFin
Sur la fenetre j'ai un Bouton ( GENERER ) , dans le code : CLIC SUR
BTN_BOUTON,
le lance l'exécution d'une Requete, qui devrait sélectionner,en fonction
des Paramétres
saisies auparavant, des Enregistrements à partir d'un Fichier ( FICH1 )
et les ecrire dans
un autre fichier ( FICH2 ).

Probléme:
-----------
1) Qauand je met :
--------------------
HExécuteRequête(REQ_GENERE)
- Il me génere tous les Enregistrements du Fichier ( FICH1 ),
sans tenir
compte des paramétres de selection.

2) Quand je met :
--------------------
HExécuteRequête
(REQ_GENERE),hRequêteDéfaut,wcodeste,PériodeDébut,PériodeFin)
- Il ne génére aucun Enregistrement.

VOTRE AIDE S.V.P
MERCI D'AVANCE

Posté le 10 mai 2006 - 23:53
BO?SOIR MR %ARC

Je n'ai pas compris votre reponse ???

ou dois-je placer ces déclarations et comment ??

si vous pouver détailler un peu plus SVP

MERCI D'AVANCE
Posté le 10 mai 2006 - 23:57
Salut,

sans vraiment savoir comment tu définis les champs de ta table, je dirai qu'ils sont sensible a la casse et que tu dois avoir une rreur de majuscule ou un blanc ou quelque chose comme ca qui traine.

Si une de tes 3 conditions est fausse il ne peut rien te retourner, en supposant que les les tests soient des AND.

Bon dev,

Philippe

IDRI a écrit :
Bonjour

J'ai une fenetre ou je saisie les Paramétres de Selection :
- Code Sté
- PériodeDébut
- PériodeFin
Sur la fenetre j'ai un Bouton ( GENERER ) , dans le code : CLIC SUR BTN_BOUTON,
le lance l'exécution d'une Requete, qui devrait sélectionner,en fonction des Paramétres
saisies auparavant, des Enregistrements à partir d'un Fichier ( FICH1 ) et les ecrire dans
un autre fichier ( FICH2 ).

Probléme:
-----------
1) Qauand je met :
--------------------
HExécuteRequête(REQ_GENERE)
- Il me génere tous les Enregistrements du Fichier ( FICH1 ), sans tenir
compte des paramétres de selection.

2) Quand je met :
--------------------
HExécuteRequête (REQ_GENERE),hRequêteDéfaut,wcodeste,PériodeDébut,PériodeFin)
- Il ne génére aucun Enregistrement.

VOTRE AIDE S.V.P
MERCI D'AVANCE

Posté le 11 mai 2006 - 01:06
quand tu définis ta requête dans l'éditeur tu mets des conditions dans les
conditions tu as le choix entre valeur et paramètre tu choisis paramètre et
tu définis un nom pour le paramètre par exemple pcode

ensuite quand tu exécutes ta requête .
requete.pcode=mavariable
hexecuterequete(marequete)

sinon va voir l'aide sur les requêtes et comment passer des paramètres
"IDRI" <taibi_idri@hotmail.com> a écrit dans le message de news:
44622bbc$1@news.pcsoft.fr...


BO?SOIR MR %ARC

Je n'ai pas compris votre reponse ???

ou dois-je placer ces déclarations et comment ??

si vous pouver détailler un peu plus SVP

MERCI D'AVANCE

Posté le 11 mai 2006 - 15:50
BONJOUR MR MARC

J'ai procédé comme vouc l'aviez indiqué, mais le probléme subsiste toujours.
Pour mieux vous eclaicir , voila le code que j'ai mis sur CLIC BTN_BOUTON:


//-------------------------------------------------------
Info("LANCEMENT DE LA FACTURATION ... Valider"+RC+HErreurInfo())
//------------------------------------------------------

//---------------------------------
REQ_GENERE.WCODESTE=CODE_STE
HExécuteRequête(REQ_GENERE)
//---------------------------------

SI ErreurDétectée ALORS
Erreur("Erreur d'initialisation de la requete"+RC+HErreurInfo())
RETOUR
FIN

// Lecture du premier Enregistrement de la requete
//-------------------------------------------------------
HLitPremier(REQ_GENERE)

TANTQUE PAS HEnDehors()

// Traitement sur l'enregISTREMENT DE LA REQUETE
//--------------------------------------------------------
// Mise à jour Fichier Factures
//-----------------------------
FIC_FACTURE_MONEY.CODE_STE=wcodeSte
FIC_FACTURE_MONEY.LIB_STE=gsWLIBSTE
FIC_FACTURE_MONEY.NFACTURE=gsWNFACTURE
FIC_FACTURE_MONEY.PERIODE_DEBUT=gdPERDEBUT
FIC_FACTURE_MONEY.PERIODE_FIN=gdPERFIN

FIC_FACTURE_MONEY.DATEOPER=REQ_GENERE_FACTURE.DATEOPER
FIC_FACTURE_MONEY.TAUXCOMMIS=REQ_GENERE_FACTURE.TAUXCOMMIS
FIC_FACTURE_MONEY.MTANTCOMMIS=REQ_GENERE_FACTURE.MTANTCOMMIS
FIC_FACTURE_MONEY.MTANTOPER=REQ_GENERE_FACTURE.MTANTRECU
FIC_FACTURE_MONEY.NREFERENCE=REQ_GENERE_FACTURE.NREFERENCE
gsNREFERENCE=REQ_GENERE_FACTURE.NREFERENCE

//----------------------------------
HAjoute(FIC_FACTURE_MONEY)
//----------------------------------
SI ErreurDétectée ALORS
Info("Impossible d'ajouter un enregistrement"+RC+HErreurInfo())
RETOUR
FIN

HRAZ(FIC_FACTURE_MONEY)

// Mise à jour Fichier des Mouvements MONEY ( Position Facturé )
//------------------------------------------------------------------
HLitRecherchePremier(FICMVT_MONEY,NREFERENCE,gsNREFERENCE)

SI HTrouve(FICMVT_MONEY)
FICMVT_MONEY.FACTURE="O"
FICMVT_MONEY.DATEFACTURE=DateSys()
//------------------------
HModifie(FICMVT_MONEY)
//------------------------
SI ErreurDétectée ALORS
Info("Impossible de Modifier un enregistrement"+RC+HErreurInfo())
RETOUR
FIN

FIN

// Lecture de l'enregistrement suivant de la Requete
//----------------------------------------------------------
HLitSuivant(REQ_GENERE)
//-------------------------------

FIN

//-------------------------------------
HAnnuleDéclaration(REQ_GENERE)
//------------------------------------------------------
Info("FIN TRAITEMENT DE LA FACTURATION ....."+RC+HErreurInfo())
//------------------------------------------------------