PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2025 → Rafraichissement d'une table dans une FI
Rafraichissement d'une table dans une FI
Iniciado por Jean Turcotte, 15,feb. 2019 01:01 - 2 respuestas
Miembro registrado
1.411 mensajes
Publicado el 15,febrero 2019 - 01:01
Bonjour,

Je viens de commencer un nouveau projet WD. Je veux utiliser une Fenêtre principale avec un menu au haut. Dans cette fenêtre, j’insère Une champ fenêtre Interne pour qu'a chaque menu sélectionné( sommaire, projet, clients etc...), je remplace le contenu du champ fenêtre interne avec des FI correspondant au menu. Ex, je clic sur le menu client et je remplace le contenu du champ FI par FI_Client. Cette FI contient une table contenant les clients. Ça fonctionne bien.

J'ai créé un bouton (Ajout de client) dans le menu qui ouvre une fiche client et qui enregistre les données dans une rubrique puis je ferme la fenêtre client pour revenir à la page principale. La table clients de la FI ne s'update pas. J'ai essayé plein de chose mais rien n'y fait pour updater la FI, j'ai mis un code Tableaffiche avant de fermer la fenêtre client mais (j'obtient l'erreur 'objet non défini'.

J'ai temporairement enlevé le champ FI de la fenêtre principale et j'ai utilisé des plans pour remplacer chaque FI et là ma fonction
TableAffiche(FEN_Principale.TABLE_Clients,taDébut)

fonctionne.

Je n'aime pas utiliser les plans car si je ne me trompe, à l'ouverture de la fenêtre principale, tous les champs de tout les plans se chargent en mémoire et ça alourdit l'appli.

Avez-vous des idées pour updater des FI à partir d'une autre fenêtre?

Merci !

--
Jean Turcotte
WX 24
Android 8.0 sur Galaxy S8
Laptop Lenovo I7 12GB Ram
Miembro registrado
356 mensajes
Publicado el 17,febrero 2019 - 11:12
Bonjour Jean,

J'imagine que depuis le temps tu as trouvé une solution, mais on ne sait jamais.

En fait, si j'ai bien compris ton principe, ton champ "TABLE_Clients" n'existe pas vraiment dans ta "FEN_Principale" mais seulement dans la fenêtre interne.
A mon avis tu devrais pouvoir utiliser 2 solutions pour updater la table :
- refaire un "ChangeFenêtreSource" avec par exemple
ChangeFenêtreSource(ChampFenêtreInterne,ChampFenêtreInterne..FenêtreSource)

- ou si tu veux gérer le positionnement utiliser un code de ce type
TableAffiche({ChampFenêtreInterne..FenêtreSource+".TABLE",indChamp},taCourantEnreg)

en supposant que les champs tables portent le même nom '"TABLE" dans toutes tes fenêtres internes, sinon il te frauda adapter.
Et avec "ChampFenêtreInterne" le nom du champ fenêtre interne de la fenêtre principale.

A+

--
Francis MOREL
http://www.SoftProtect.fr
Miembro registrado
1.411 mensajes
Publicado el 17,febrero 2019 - 22:21
Merci Francis,

J'avais effectivement trouvé une solution de rechange. On m'a fortement recommander d'utiliser des fenêtres Soeur en tout temps. Les champs compris dans chaque fenêtre sont facilement paramétrables. Chaque nouvelle fenêtre soeur ouverte est inscrite dans une table pour pouvoir les fermer à la fermeture de la fenêtre principale.

J'aime bien cette avenue car plus moderne... à l'heure ou le multi-écrans gagne en popularité. Les fenêtres soeur peuvent être repositionnée n'importe ou sur les écrans.

Merci !
Jean

--
Jean Turcotte
WX 24
Android 8.0 sur Galaxy S8
Laptop Lenovo I7 12GB Ram