PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2025 → Passage en paramétre d'un FENETRE INTERNE
Passage en paramétre d'un FENETRE INTERNE
Iniciado por Der§en, 08,oct. 2020 09:10 - 9 respuestas
Miembro registrado
334 mensajes
Publicado el 08,octubre 2020 - 09:10
Bonjour,

Je bloque sur un truc qui me semblait simple.

J'ai légèrement modifier, le projet d'exemple "WD-Multi-Fenetrage", histoire d'illustrer mon propos.

J'ai besoin de pouvoir passer en paramètre le nom d'une fenêtre interne, mais tout ce que j'ai essayer fait planter le programme.

Auriez-vous des suggestions pour m'aider ?

/////////////// Clic sur BTN_Modifier /////////////

// On regarde la ligne sélectionnée
nIndice est un entier = TableSelect(Table_CLIENT)
nNumClient est un entier

SI nIndice = -1 ALORS
Info("Vous devez sélectionner un client dans la table")
SINON
// On récupère l'identifiant du client
nNumClient = Table_CLIENT

// On regarde si l'onglet client n'est pas déjà ouvert
SI gtaOnglet[nNumClient]="" _OU_ ChampExiste(gtaOnglet[nNumClient])=Faux ALORS
// On ouvre un nouvel onglet pour le client
gtaOnglet[nNumClient] = ChargeFIche("FI_Fiche_client", ChaîneConstruit("Fiche client de : %1",Table_CLIENT.Nom[nIndice]), nNumClient)
SINON
// On rend la fenêtre active
DonneFocus(gtaOnglet[nNumClient])
FIN
FIN

PROCEDURE INTERNE ChargeFIche(sUneFI, sUnLibelle sont des chaînes, nUnClient est un entier): chaîne
RENVOYER OngletOuvre(ONG_Clients, sUnLibelle, {sUneFI, indFenêtre}, nUnClient)
FIN


--
———————————————————————————————————
Ce qui se conçoit bien se code clairement et se débogue facilement...

- Pastiche d’une citation de Nicolas Boileau -
Miembro registrado
4.365 mensajes
Publicado el 08,octubre 2020 - 09:21
Bonjour,
OngletOuvre attend une chaine de caractère avec ou sans guillemet pour le nom de la FI. L'indirection est donc superflue,

--
Il y a peut être plus simple, mais, ça tourne
Miembro registrado
334 mensajes
Publicado el 08,octubre 2020 - 09:53
Ok, je vient d'enlever l'indirection :
RENVOYER OngletOuvre(ONG_Clients, sUnLibelle, sUneFI, nUnClient)


Du coup, j'ai une erreur que je n'avais jamais eu auparavant:





--
———————————————————————————————————
Ce qui se conçoit bien se code clairement et se débogue facilement...

- Pastiche d’une citation de Nicolas Boileau -
Miembro registrado
334 mensajes
Publicado el 08,octubre 2020 - 10:03
Bon, le bug, je l'ai sur mon Windev 23 qui est utilisé pour les programmes en productions.

Sur Windev 25, qui est pour l'instant réservé au test, la modification proposé par Voroltinquo ne fait pas planter le programme.

J'en déduit qu'il s'agit la d'un bug non résolu sur la version 23.

Merci a Voroltinquo, de m'avoir mis sur la voie !

--
———————————————————————————————————
Ce qui se conçoit bien se code clairement et se débogue facilement...

- Pastiche d’une citation de Nicolas Boileau -
Miembro registrado
170 mensajes
Publicado el 08,octubre 2020 - 10:08
Bonjour Dergen

Dergen a écrit :

...
PROCÉDURE INTERNE ChargeFIche(sUneFI, sUnLibelle sont des chaînes, nUnClient est un entier): chaîne
RENVOYER OngletOuvre(ONG_Clients, sUnLibelle, {sUneFI, indFenêtre}, nUnClient)
FIN
...


Essai ceci :

PROCEDURE INTERNE ChargeFIche(sUneFI est une chaîne [nom de fenêtre], sUnLibelle est une chaîne, nUnClient est un entier): chaîne


en remplaçant les crochets par les symboles <>

--
Hth,
Padbrain
Miembro registrado
334 mensajes
Publicado el 08,octubre 2020 - 14:10
N'a pas fonctionné :
ChargeFIche(sUneFI est une chaîne <Nom de fenêtre>, sUnLibelle est une chaîne, nUnClient est un entier): chaîne


--
———————————————————————————————————
Ce qui se conçoit bien se code clairement et se débogue facilement...

- Pastiche d’une citation de Nicolas Boileau -
Miembro registrado
170 mensajes
Publicado el 08,octubre 2020 - 14:57
As-tu bien spécifié l'attribut <nom de fenêtre> ?

--
Hth,
Padbrain
Miembro registrado
334 mensajes
Publicado el 08,octubre 2020 - 17:10
J'ai éxactement mis ceci : <Nom de fenêtre> !

--
———————————————————————————————————
Ce qui se conçoit bien se code clairement et se débogue facilement...

- Pastiche d’une citation de Nicolas Boileau -
Miembro registrado
170 mensajes
Publicado el 08,octubre 2020 - 17:28
Un coup dans l'eau :(

En V24, cette syntaxe fonctionne pour moi...

--
Hth,
Padbrain
Miembro registrado
296 mensajes
Publicado el 08,octubre 2020 - 18:28
Peux tu nous montrer plus exactement ce que tu as fais et le message d'erreur généré ? je suis sur à 100% de pouvoir t'aider

--
Les innocents sont toujours accusés à tord.