| |
Posté le 20 septembre 2007 - 19:48 |
Bonjour
J'ai un champ fenêtre interne FI_FenêtreInterne1 qui appelle la fenêtre interne MASTERFIELD dans une fenêtre appelée FI_MENU Dans cette fenêtre interne j'ai une procédure appellée CALL_TT()
J'aimerai depuis une autre fenêtre exécuter la procédure
Un truc dans le genre :
FI_MENU.FI_FenêtreInterne1.MASTERFIELD.call_TT()
Mais je ne trouve nulle part une indication comment écrire cet appel correctement
Merci |
| |
| |
| | | |
|
| | |
| |
Posté le 21 septembre 2007 - 02:11 |
C'est le propre d'une procedure local, elle est local. Pour pouvoir apeller un procedure de n'importe qu elle fenetre, la procedure en question doit etre une procedure GLOBALE. |
| |
| |
| | | |
|
| | |
| |
Posté le 21 septembre 2007 - 10:30 |
Bonjour...
j'essayerais avec un executetraitement
Cordialement
-- Fabrice Harari Consultant WinDev, WebDev et WinDev Mobile International
Plus d'information sur http://fabriceharari.com/index_FR.html
Robert wrote:
Bonjour
J'ai un champ fenêtre interne FI_FenêtreInterne1 qui appelle la fenêtre interne MASTERFIELD dans une fenêtre appelée FI_MENU Dans cette fenêtre interne j'ai une procédure appellée CALL_TT()
J'aimerai depuis une autre fenêtre exécuter la procédure
Un truc dans le genre :
FI_MENU.FI_FenêtreInterne1.MASTERFIELD.call_TT()
Mais je ne trouve nulle part une indication comment écrire cet appel correctement
Merci
|
| |
| |
| | | |
|
| | |
| |
Posté le 21 septembre 2007 - 10:33 |
Salut !
On 20-Sep-2007, "Robert" <robert@luxpost.com> wrote:
Bonjour
J'ai un champ fenêtre interne FI_FenêtreInterne1 qui appelle la fenêtre interne MASTERFIELD dans une fenêtre appelée FI_MENU Dans cette fenêtre interne j'ai une procédure appellée CALL_TT()
J'aimerai depuis une autre fenêtre exécuter la procédure
Un truc dans le genre :
FI_MENU.FI_FenêtreInterne1.MASTERFIELD.call_TT()
Mais je ne trouve nulle part une indication comment écrire cet appel correctement
Merci
Il me semble que ta syntaxe devrait être :
fi_menu.fi_FenetreInterne1.call_TT()
En ce qui concerne la fenetre fi_menu, la fenetre interne s'apelle fi_fenetreInterne1 et elle ignore quelle est la fenêtre interne contenue dans le champ fenetre interne. Du reste, si on change la fenetre interne par programmation, le nom du champ ne change pas lui ...
En espérant avoir aidé ... -- Marcel Berman Président de Be-Dev (www.be-dev.be) Membre du conseil d'administration de Windasso Be-dev et Windasso sont des groupes d'utilisateurs de Windev, Webdev et Windev Mobile produits par la société PC-Soft (France) |
| |
| |
| | | |
|
| | |
| |
Posté le 21 septembre 2007 - 10:34 |
Depuis fenetre2 faire
ExecuteTraitement(fenetre1.procedurelocalefenetre1,trtprocedure,param1,param2)
fenetre1 doit être en execution
ou : collection de procedure
ou encore : Chargeprocedure (ancienne fonction WD55)
Un petit tour dans l'aide avec le critère "Appeler une procedure" vous aurait fait gagner du temps |
| |
| |
| | | |
|
| | |
| |
Posté le 21 septembre 2007 - 10:35 |
Bien qu'elle ne soit gardée dans Windev 11 que pour compatibilité avec les versions antérieures, tu peux utiliser la fonction ChargeProcédure(NomFenêtre) qui "charge" dans ta fenêtre en cours les procédures locale d'une autre fenêtre.
Dans ton cas cela donnerai : ChargeProcédure(MASTERFIELD) call_TT() |
| |
| |
| | | |
|
| | |
| |
Posté le 21 septembre 2007 - 11:14 |
J'ai essayé les propositions, mais il me dit opérateur interdit entre : FEN_MENU.FI_FenêtreInterne1 et call_TT donc le .
FEN_MENU.FI_FenêtreInterne1.call_TT() ne semble pas fonctionner ; ni dans executetraitement ai le même message |
| |
| |
| | | |
|
| | |
| |
Posté le 21 septembre 2007 - 12:53 |
mettre ta procedure en globale ne foncionne pas? ?? |
| |
| |
| | | |
|
| | |
| |
Posté le 21 septembre 2007 - 15:52 |
non car je dois accéder à la valeur dans une liste combo de cette fenêtre |
| |
| |
| | | |
|
| | |
| |
Posté le 07 septembre 2018 - 08:33 |
Bonjour a tous, le sujet est un peu vieux, mais je suis tomber dessus en recherchant une solution au même problème, et du coup comme il n'y a pas vraiment de réponse qui marche mais avec un peu d'expérience m'a quand même permis d'en trouver une. On va appeler FEN_PRC la fenêtre contenant le champ fenêtre interne FenêtreInterne1 qui contient la fenêtre interne FI_MAFICHE
Donc pour accéder a une procédure locale de FI_MAFICHE depuis une procédure globale il faut ecrire le code suivant :
FEN_PRC.FenêtreInterne1.MaProcédureLocale
Voila, ça pourrais encore servir a quelqu'un d'autre. |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 63 messages Popularité : +4 (4 votes) |
|
Posté le 16 novembre 2018 - 13:55 |
Sergio a écrit :
Bonjour a tous, le sujet est un peu vieux, mais je suis tomber dessus en recherchant une solution au même problème, et du coup comme il n'y a pas vraiment de réponse qui marche mais avec un peu d'expérience m'a quand même permis d'en trouver une. On va appeler FEN_PRC la fenêtre contenant le champ fenêtre interne FenêtreInterne1 qui contient la fenêtre interne FI_MAFICHE
Donc pour accéder a une procédure locale de FI_MAFICHE depuis une procédure globale il faut ecrire le code suivant :
FEN_PRC.FenêtreInterne1.MaProcédureLocale
Voila, ça pourrais encore servir a quelqu'un d'autre.
Sergio, ca ne fonctionne pas directement il faut utiliser ExécuteTraitement
J'y arrive de cette façon...
ExécuteTraitement("FEN_PRC.FI_MAFICHE.MaProcédureLocale",trtProcedure)
Question qui me brule les lèvres!!!
Comment peut on faire 2 (ou N) instances de la même fenêtre interne dans une même fenêtre mère (avec des données différentes dedans évidemment) Ca serait top!!!
-- Nicolas Magnien oXalis [Supervision Industrielle - Procédés Batch - ERP - MES] www.decobecq-automatismes.fr
|
| |
| |
| | | |
|
| | |