|
| [WD12] Rafraîchir table basée sur requête intégrée paramétrée |
| Iniciado por jean-pierre, 28,ene. 2009 18:50 - 16 respuestas |
| |
| | | |
|
| |
| Publicado el 28,enero 2009 - 18:50 |
Bonjour,
Un champ table a comme contenu une requête (Source fichier --> Fichier parcouru = Nomfenêtre_$Requête) paramétrée qui pointe sur 2 fichiers liés Fic1 et Fic2. Dans le code d'initialisation de ma table, j'ai mis :
MaSource.P_Parametre = UneVariable
Lors du 1er affichage, ma table contient bien les bonnes données.
J'ai ajouté 3 boutons qui permettent d'ajouter, de modifier ou de supprimer des enregistrements du fichier Fic1 sur une autre fenêtre. Je voudrais donc, quand je ferme cette fenêtre, rafraîchir ma table pour que soient prises en compte les modifs. J'ai mis un TableAffiche(Table, taRéExecuteRequete) mais j'ai lu qu'il faut auparavant réinitialiser le paramètre de ma requête intégrée et je ne sais pas comment faire.
Je ne peux pas remettre MaSource.P_Parametre = UneVariable. Je ne peux pas mettre Nomfenêtre_$Requête.P_Parametre = UneVariable.
Je cherche donc à réinitialiser le paramètre d'une requête intégrée qui est source d'un champ table.
Merci pour votre aide.
Bon dév.
Pampi |
| |
| |
| | | |
|
| | |
| |
| Publicado el 14,mayo 2009 - 20:02 |
bonjour, je me permet de vous interroger pour savoir si vous avez eu une réponse à votre question ? ou la solution à votre problème.
J'ai le même soucis avec une requete intégrée qui n'affiche dans une combo que qui doit proposer à la saisie le résultat d'une requête. et j'ai donc un paramêtre à passer à ma requete intégrée .
Merci pour votre réponse.
Pampi wrote in news message <a084668ae80068bfcaab09b381878213@news.pcsoft>:
Bonjour,
Un champ table a comme contenu une requête (Source fichier --> Fichier parcouru = Nomfenêtre_$Requête) paramétrée qui pointe sur 2 fichiers liés Fic1 et Fic2. Dans le code d'initialisation de ma table, j'ai mis :
MaSource.P_Parametre = UneVariable
Lors du 1er affichage, ma table contient bien les bonnes données.
J'ai ajouté 3 boutons qui permettent d'ajouter, de modifier ou de supprimer des enregistrements du fichier Fic1 sur une autre fenêtre. Je voudrais donc, quand je ferme cette fenêtre, rafraîchir ma table pour que soient prises en compte les modifs. J'ai mis un TableAffiche(Table, taRéExecuteRequete) mais j'ai lu qu'il faut auparavant réinitialiser le paramètre de ma requête intégrée et je ne sais pas comment faire.
Je ne peux pas remettre MaSource.P_Parametre = UneVariable. Je ne peux pas mettre Nomfenêtre_$Requête.P_Parametre = UneVariable.
Je cherche donc à réinitialiser le paramètre d'une requête intégrée qui est source d'un champ table.
Merci pour votre aide.
Bon dév.
Pampi
|
| |
| |
| | | |
|
| | |
| |
| Publicado el 23,junio 2009 - 17:38 |
| avec : TableAffiche(TA_TABLE, taCourantEnreg) |
| |
| |
| | | |
|
| | |
| |
| Publicado el 20,enero 2010 - 19:47 |
Bonjour, j'ai le même problème.
J'ai une requete intégrée impliquant 2 fichiers. Le fichier maitre a une condition sur un des champs. J'ai donc utilisé dans 'initialisation de la table'
MaSource.param1 = sai_ZoneDeFiltrage Donc quand je clique sur le bouton de validation, j'execute la commande
TableAffiche(Table_XXXX, taCourantEnreg)
Dans l'aide, on dit qu'on peut utiliser la syntaxe suivante
<Nom Requête>.<Nom Paramètre1> = xxx <Nom Requête>.<Nom Paramètre2> = xxx <Nom Requête>.<Nom Paramètre3> = xxx Mais ça n'a jamais fonctionné, il me dit que <Nom Requête> est inconnu et qu'il faut utiliser Extern.
De plus si je clique sur une des lignes de la table (résultat d'une requête entre fichier CFMD28 et CFMD0L), ça doit me remplir les champs de la fenêtre (contenant aussi cette table) liés au fichier CFMD28). Donc dans 'Selection d'une ligne', j'ai
RAZ(GR_SAI_CFMD28) HRecherchePremier(CFMD28,CFMD28_PK,HConstruitValClé(CFMD28,CFMD28_PK,SAI_CFMD21_005,TABLE_CFMD28.COL_CFMD28_002)) IF HTrouve() THEN FichierVersEcran() END ca ne fonctionne pas, Je suis complétement perdu |
| |
| |
| | | |
|
| | |
| |
| Publicado el 20,enero 2010 - 21:18 |
Bonsoir,
Une question bête, mais qui peu servir à d'autres :
Pourquoi une requête intégrée ?
Personnellement, presque toutes mes fenêtres ou états sont avec des requêtes du projet que je peux manipuler à souhait 
A suivre,
Christian |
| |
| |
| | | |
|
| | |
| |
| Publicado el 21,enero 2010 - 10:58 |
Comme elle est liée à cette table dans cette fenêtre et nulle part ailleurs, je pensais que ça tombait pile poile dans l'intérêt de la chose. :-o
Sinon après avoir nettoyé mes bugs à gauche et à drotie, ça à l'air de fonctionner.
En fait, même si ce que je voulais faire fonctionne, j'aurais aimé savoir pourquoi le code expliqué dans l'aide ne fonctionne pas. Pourquoi on est obligé de passer par masource.param1 dans initialisation de la table plutôt que de pouvoir passer par le code <NomRequete>.<NomParam> ? |
| |
| |
| | | |
|
| | |
| |
| Publicado el 21,enero 2010 - 13:31 |
TableAffiche(xxx, taRéExécuteRequête) ?
Jean-Pierre |
| |
| |
| | | |
|
| | |
| |
| Publicado el 21,enero 2010 - 14:37 |
Bonjour
parce que ce n'est pas une requête à part entière (intégrée à la table, pas indépendante), d'où l'intérêt de passer par des requêtes indépendantes
Cordialement
-- Fabrice Harari Consultant WinDev, WebDev et WinDev Mobile International
Plus d'information sur http://fabriceharari.com/index_FR.html
On 1/21/2010 4:58 AM, Pierre wrote:
Comme elle est liée à cette table dans cette fenêtre et nulle part ailleurs, je pensais que ça tombait pile poile dans l'intérêt de la chose. :-o
Sinon après avoir nettoyé mes bugs à gauche et à drotie, ça à l'air de fonctionner.
En fait, même si ce que je voulais faire fonctionne, j'aurais aimé savoir pourquoi le code expliqué dans l'aide ne fonctionne pas. Pourquoi on est obligé de passer par masource.param1 dans initialisation de la table plutôt que de pouvoir passer par le code <NomRequete>.<NomParam> ?
|
| |
| |
| | | |
|
| | |
| |
| Publicado el 21,enero 2010 - 16:20 |
Merci pour la réponse !
mais au niveau de l'aide "Utilisation d'une requête paramétrée dans une table ...", il ne signale pas que ça ne fonctionne pas sur une requête intégrée.
Au contraire, ils disent "Lorsqu'une table fichier est liée à une requête paramétrée (intégrée ou non)..."
Ou alors j'interprète mal la doc |
| |
| |
| | | |
|
| | |
| |
| Publicado el 21,enero 2010 - 16:46 |
Bonjour
Toute requête fonctionne la ou elle est connue. Une requête intégrée n'est connue que de l'objet qui l'intègre, cad la table. Donc, dans le code de la table, tu peux faire ce que tu voulais, mais en dehors du code de la table, NON... De la même facon que si tu déclare une variable LOCALE a une fenêtre, elle n'est pas utilisable dans une autre fenêtre.
En d'autre terme, un requete intégrée est LOCALE à la table
C'est plus clair ?
Cordialement
-- Fabrice Harari Consultant WinDev, WebDev et WinDev Mobile International
Plus d'information sur http://fabriceharari.com/index_FR.html
On 1/21/2010 10:20 AM, Pierre wrote:
Merci pour la réponse !
mais au niveau de l'aide "Utilisation d'une requête paramétrée dans une table ...", il ne signale pas que ça ne fonctionne pas sur une requête intégrée.
Au contraire, ils disent "Lorsqu'une table fichier est liée à une requête paramétrée (intégrée ou non)..."
Ou alors j'interprète mal la doc
|
| |
| |
| | | |
|
| | |
| |
| Publicado el 04,diciembre 2013 - 00:42 |
| HExécuteRequête(MA_TABLE..FichierParcouru,hRequêteDéfaut,"Mon_Param") |
| |
| |
| | | |
|
| | |
| |
| Publicado el 31,agosto 2015 - 08:34 |
visiblement les ajout et modification sont actualisé avec un taInit pour les tableaux, à vérifier pour les combos.
TableAffiche(TABLE_montableau, taInit) |
| |
| |
| | | |
|
| | |
| |
| Publicado el 31,mayo 2017 - 02:11 |
Rafraîchir table basée sur requête intégrée paramétrée Work100%100 HExécuteRequête(TABLE_REQ_construire..FichierParcouru,hRequêteDéfaut) TableAffiche(TABLE_REQ_construire, taInit) |
| |
| |
| | | |
|
| | |
| |
| Publicado el 31,mayo 2017 - 10:11 |
RAZ(GR_SAI_CFMD28) HRecherchePremier(CFMD28,CFMD28_PK,HConstruitValClé(CFMD28,CFMD28_PK,SAI_CFMD21_005,TABLE_CFMD28.COL_CFMD28_002)) IF HTrouve() THEN FichierVersEcran() END
Attention, dans le code ci-dessus, l’enregistrement n'est pas lu (donc fichierversecran() ne fait rien) Il faut faire un HLitRecherchePremier() |
| |
| |
| | | |
|
| | |
| |
| Publicado el 13,agosto 2019 - 14:30 |
Bonjour,
Je déterre mais dans le doute je pense même que ça me sera utile par la suite dans un prochain projet !
Pour une requête paramétrée liée à une table => type FEN_fenêtre_1$Requête.
Si la requête est paramétrée, passer le paramètre de la manière suivante :
{"FEN_fenêtre_1$Requête.param_x"}= mon_paramètre tableaffiche (table_fenêtre,taRéExecuteRequete))
La requête n'existant que dans le champ de table => il n'est possible de l'utiliser qu'après initialisation du champ d'où l'utilisation d'une indirection pour éviter les erreur de compilation.
Bonne journée. |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 2 mensajes |
|
| Publicado el 11,diciembre 2019 - 14:02 |
Bonjour,
Novice en WD, j'ai compris 2 / 3 trucs grâce à ce fil de discussion : - la portée LOCALE d'une requête intégrée, juste connue dans l'élément dans lequel elle a été définie (d'où les notations MaSource ou FEN_xxx_1$Requête.param qui ne fonctionnent que dans les § concernant cet élément) - l'astuce de l'indirection pour pouvoir renseigner le paramètre de la requête ailleurs que dans le § de l'élément où elle a été définie
=> j'en arrive à ma question 
Comment rafraîchir un champ table (celui dans lequel j'ai ma requête intégrée paramétrée !) quand on coche ou décoche un interrupteur situé dans la fenêtre ?? Je suis clair ?
Merci
-- Bonne journée |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 2 mensajes |
|
| Publicado el 11,diciembre 2019 - 15:15 |
re ...
Désolé, j'ai trouvé ma réponse tout seul : TableAffiche( nomDeMaTable )
-- Bonne journée |
| |
| |
| | | |
|
| | | | |
| | |
|