| |
Membre enregistré 146 messages |
|
Posté le 21 mars 2018 - 12:29 |
Bonjour, Je tourne en rond avec ce problème. J'ai une requête qui fonctionne lorsque je suis dans l'editeur de requête. Lorsque je l'utilise via une fenêtre depuis un champ de saisie le paramètre ne se renseigne pas !?! Auriez vous une idée :
REQ_PDV_Global_Mensuel.Param_PDVG_MoisAnnee = SAI_PDVG_DateRepFourImma..Valeur HExécuteRequête(REQ_PDV_Global_Mensuel) Trace("Date Paramétrée : "+REQ_PDV_Global_Mensuel.Param_PDVG_MoisAnnee)
Lorsque je trace la valeur est "0" à la place de "201801" valeur saisie dans le champ MERCI |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 1 143 messages Popularité : +50 (142 votes) |
|
Posté le 21 mars 2018 - 13:09 |
bonjour, Peut-être en passant par une variable date qui recevrait le contenu du SAI et utiliser cette variable date pour initialiser le paramètre de la requête ?... |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 43 messages Popularité : +2 (2 votes) |
|
Posté le 21 mars 2018 - 13:16 |
Bonjour, Après avoir exécuté la requête, il faut en lire le résultat (HlitPremier(REQ_PDV_Global_Mensuel)) Bon courage |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 146 messages |
|
Posté le 21 mars 2018 - 14:02 |
Bonjour, J'ai fait le test avec une variable même résultat ?! Oui j'avais bien hlit
REQ_PDV_Global_Mensuel.Param_PDVG_MoisAnnee = sMaPreriodePDVGlobal HExécuteRequête(REQ_PDV_Global_Mensuel) Trace("Date Paramétrée : "+REQ_PDV_Global_Mensuel.Param_PDVG_MoisAnnee)
SI HExécuteRequête(REQ_PDV_Global_Mensuel) = Faux ALORS Erreur("Erreur d'initialisation de la requête PDV Global" + RC + HErreurInfo()) RETOUR SINON HLitPremier(REQ_PDV_Global_Mensuel) TANTQUE PAS HEnDehors() sPDVG_MonImmat = REQ_PDV_Global_Mensuel.Immatriculation TABLE_PDV_RepartitionFourImmat.COL_Immatriculation = sPDVG_MonImmat TableAjouteLigne(TABLE_PDV_RepartitionFourImmat,COL_Immatriculation) HLitSuivant() FIN TableSupprimeSelect(TABLE_PDV_RepartitionFourImmat) FIN
FIN HLibèreRequête(REQ_PDV_Global_Mensuel)
Voila le code pour l'execution de la requête Merci pour votre aide |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 1 143 messages Popularité : +50 (142 votes) |
|
Posté le 21 mars 2018 - 14:43 |
après le premier HExécuteRequête il faut un HLit non? |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 146 messages |
|
Posté le 21 mars 2018 - 14:52 |
Résolu en modifiant de cette manière En modifiant de cette manière ça fonctionne, en ajoutant le paramètre dans le HexecuteRequete :
SI HExécuteRequête(REQ_PDV_Global_Mensuel,hRequêteDéfaut,sMaPreriodePDVGlobal) = Faux ALORS Erreur("Erreur d'initialisation de la requête PDV Global" + RC + HErreurInfo()) RETOUR SINON HLitPremier(REQ_PDV_Global_Mensuel) TANTQUE PAS HEnDehors() sPDVG_MonImmat = REQ_PDV_Global_Mensuel.Immatriculation TABLE_PDV_RepartitionFourImmat.COL_Immatriculation = sPDVG_MonImmat TableAjouteLigne(TABLE_PDV_RepartitionFourImmat,COL_Immatriculation) HLitSuivant() FIN TableSupprimeSelect(TABLE_PDV_RepartitionFourImmat) FIN
FIN HLibèreRequête(REQ_PDV_Global_Mensuel) MERCI |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 939 messages Popularité : +66 (68 votes) |
|
Posté le 21 mars 2018 - 15:17 |
bonjour,
de ce que je vois, vous lanciez deux fois le HExecuteRequete()
Hors, le premier appel après avoir défini le paramètre prendra bien en compte ce dernier, mais après chaque exécution les paramètres sont réinitialisé.
=> Remarques : Cette syntaxe simplifie le passage des paramètres. En effet, si les paramètres sont passés directement dans la fonction HExécuteRequête, il est nécessaire de respecter l'ordre des paramètres. A chaque exécution de la requête paramétrée, la structure des paramètres de la requête est ré-initialisée.
=> https://doc.pcsoft.fr/fr-FR/?3044080&name=HExecuteRequete
donc votre premier trace devait ne rien afficher....
il fallait juste n'exécuter qu'une seule fois votre requête....
à retester
bon dèv |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 939 messages Popularité : +66 (68 votes) |
|
Posté le 21 mars 2018 - 15:22 |
un peu comme çà :
REQ_PDV_Global_Mensuel.Param_PDVG_MoisAnnee = sMaPreriodePDVGlobal Trace("Date Paramétrée soumise : "+REQ_PDV_Global_Mensuel.Param_PDVG_MoisAnnee) SI HExécuteRequête(REQ_PDV_Global_Mensuel) = Faux ALORS Erreur("Erreur d'initialisation de la requête PDV Global" + RC + HErreurInfo()) RETOUR SINON HLitPremier(REQ_PDV_Global_Mensuel) TANTQUE PAS HEnDehors() sPDVG_MonImmat = REQ_PDV_Global_Mensuel.Immatriculation TABLE_PDV_RepartitionFourImmat.COL_Immatriculation = sPDVG_MonImmat TableAjouteLigne(TABLE_PDV_RepartitionFourImmat,COL_Immatriculation) HLitSuivant()
FIN TableSupprimeSelect(TABLE_PDV_RepartitionFourImmat) FIN
FIN HLibèreRequête(REQ_PDV_Global_Mensuel) |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 146 messages |
|
Posté le 21 mars 2018 - 17:33 |
MERCI Je me mélange toujours les pinceaux avec le "hExecuteRequete", je vais regarder plus en détail, merci pour votre aide
|
| |
| |
| | | |
|
| | |