Sous-requête par l'éditeur

Le
pyfux
Bonjour à tous, et vive Windev 14 ! ( qui a testé la version 13 ???)

Un petite question de débutant:

J'ai créé sous l'éditeur une requête REQ_MAIN sur la table MAIN qui me
remonte uniquement un champ identifiant selon un filtre paramétré du type:
MAIN.DATE > param_date

J'ai également créé sous l'éditeur une requête REQ_SUB sur la table SUB
avec comme critère :
SUB.CLEF_EXTERNE n'importe quelle valeur de (ANY) REQ_MAIN

Donc logiquement, je n'ai pas de paramètre à passer à ma requête
REQ_SUB, néanmoins, à un moment donnée (hExecuteRequête) il faut bien
que je fixe le paramètre (param_date) de REQ_MAIN, non ?

Comment doit-on le faire ?

Cet exemple de code ne fonction pas:

-
REQ_MAIN.Param1=SAI_DATE_DEBUT..Valeur

SI HExécuteRequête(REQ_SUB , hRequêteDéfaut) ALORS
HLitPremier(REQ_SUB)
TANTQUE PAS HEnDehors(REQ_SUB)

//Pas d'itération !

HLitSuivant(REQ_SUB)
FIN
FIN
-

Merci pour votre aide,

Avec ce petit problème je suis complètement bloqué!

PyFux
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
mat
Le #17538601
wrote on 14.10.2008 :
REQ_MAIN.Param1=SAI_DATE_DEBUT..Valeur

SI HExécuteRequête(REQ_SUB , hRequêteDéfaut) ALORS
HLitPremier(REQ_SUB)
TANTQUE PAS HEnDehors(REQ_SUB)

//Pas d'itération !

HLitSuivant(REQ_SUB)
FIN
FIN
----------------------------------------------




Bonsoir,

Si Windev n'a pas changé dans ce coin depuis la version 10, ce
comportement est normal car REQ_MAIN n'a pas été lancé. Avec Windev une
requête enchaînée ne lance pas automatiquement la première.
En oûtre, dans mon expérience utiliser des requêtes du projet
énchaînées n'est pas une solution performante. Vaut mieux créer deux
sources de données et utiliser hExecuteRequeteSQL.

Salutations
Mat
pyfux
Le #17543021
mat a écrit :
wrote on 14.10.2008 :
REQ_MAIN.Param1=SAI_DATE_DEBUT..Valeur

SI HExécuteRequête(REQ_SUB , hRequêteDéfaut) ALORS
HLitPremier(REQ_SUB)
TANTQUE PAS HEnDehors(REQ_SUB)

//Pas d'itération !

HLitSuivant(REQ_SUB)
FIN
FIN
----------------------------------------------




Bonsoir,

Si Windev n'a pas changé dans ce coin depuis la version 10, ce
comportement est normal car REQ_MAIN n'a pas été lancé. Avec Windev une
requête enchaînée ne lance pas automatiquement la première.
En oûtre, dans mon expérience utiliser des requêtes du projet énchaînées
n'est pas une solution performante. Vaut mieux créer deux sources de
données et utiliser hExecuteRequeteSQL.

Salutations
Mat





Merci pour votre réponse,

Je constate donc que cette fonctionnalité est limité.

Heureusement qu'en passant par l'éditeur SQL on obtient la reqête à
utiliser dans le code et à lancer par hExecuteRequeteSQL.

C'est quand même dommage!
Publicité
Poster une réponse
Anonyme