PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2025 → Pb raffraichissement tableau de bord
Pb raffraichissement tableau de bord
Débuté par Didier C, 14 juil. 2025 17:06 - 5 réponses
Posté le 14 juillet 2025 - 17:06
Bonjour,

Je suis sur un projet de gestion locative multi propriétaires.
Lors du lancement de l'application, une fenêtre demande de choisir le propriétaire avec lequel on souhaite travailler.
et ensuite, la fenêtre avec le menu principal s'affiche.
Sur cette fenêtre, en autre, il y a un Tableau de bord composé d'une dizaine de widgets (Impôts, locations, crédits, ......) avec toutes les données en rapport avec le propriétaire sélectionné.
Jusque que la ca fonctionne parfaitement.
J'ai voulu rajouter sur cette fenêtre un bouton permettant de changer de propriétaire. Tout va bien sauf que je n'arrive pas a rafraichir les données en rapport avec le propriétaire sélectionné.

J'ai essayer TDBAffiche(TDB_propriétaire) mais les valeurs ne s'actualisent pas.

Comment faut il faire ?

En vous remerciant par avance
Bonne journée
Membre enregistré
1 message
Posté le 15 juillet 2025 - 11:15
Bonjour,

Il semble que le problème vienne du fait que vous n'arrivez pas à rafraîchir les widgets de votre tableau de bord après avoir changé de propriétaire. La fonction TDBAffiche(TDB_propriétaire) seule ne suffit probablement pas à forcer la mise à jour des données de tous les widgets.
Membre enregistré
2 299 messages
Posté le 15 juillet 2025 - 12:09
Bonjour Didier,

En théorie cela devrait marcher...
Extrait de l'Aide en ligne : https://doc.windev.com/fr-FR/…
"La fonction TDBAffiche exécute l'événement "Rafraîchissement du Widget" pour le Widget spécifié ou pour tous les Widgets affichés dans le champ Tableau de bord."
Il faut donc qu'il y ait du code dans les widgets !

Voir peut-être l'exemple : WD Tableau de bord

--
Bon dev,
Jean-Pierre
Message modifié, 15 juillet 2025 - 12:09
Membre enregistré
15 messages
Posté le 15 juillet 2025 - 16:14
Bonjour,

Effectivement, il y bien du code dans chaque widget.
voici le code d'initialisation du tableau de bord :
TDBConfigurationInitiale(TDB_MENU,TDBAjouteWidget(TDB_MENU,FI_Widget_Biens,"Biens"))
TDBConfigurationInitiale(TDB_MENU,TDBAjouteWidget(TDB_MENU,FI_Widget_Locations,"Locations"))
TDBConfigurationInitiale(TDB_MENU,TDBAjouteWidget(TDB_MENU,FI_Widget_Prets,"Prêts Bancaires"))
TDBConfigurationInitiale(TDB_MENU,TDBAjouteWidget(TDB_MENU,FI_Widget_assurances,"Assurances"))
TDBConfigurationInitiale(TDB_MENU,TDBAjouteWidget(TDB_MENU,FI_Widget_copropriété,"Copropriété"))
TDBConfigurationInitiale(TDB_MENU,TDBAjouteWidget(TDB_MENU,FI_Widget_impots,"Impôts"))
TDBConfigurationInitiale(TDB_MENU,TDBAjouteWidget(TDB_MENU,FI_Widget_estimations,"Estimations"))
TDBConfigurationInitiale(TDB_MENU,TDBAjouteWidget(TDB_MENU,FI_Widget_bilan,"Bilan Financier"))

//Affiche le tableau de bord
TDBAffiche(TDB_MENU)


et le code lorsque l'on clique pour changer de propriétaire

SI Ouvre(FEN_selection_propriétaire) ALORS
ExécuteTraitement(LIB_proprio,trtInit)
//Affiche le tableau de bord
TDBAffiche(TDB_MENU)
FIN


Est ce que j'ai oublié quelque chose ?
Merci d'avance
Membre enregistré
1 010 messages
Posté le 15 juillet 2025 - 17:50
Bonjour,
Vous affichez le code d'initialisation du Tableau de Bord et le code de changement de propriétaire.
Mais ceci ne dit pas à quel moment la source des Widgets est rafraichie ni le mode de liaison entre ces Widgets et la source de données.
Cdlt
Membre enregistré
2 299 messages
Posté le 16 juillet 2025 - 09:37
Bonjour,

Jusqu'ici, le code a l'air correct mais impossible de vérifier la logique jusqu'au bout.
Il faut donc fournir :
1. Le code d'initialisation de LIB_proprio qui détermine le propriétaire dans la fenêtre.
2. Le code de Rafraîchissement d'un Widget qui doit montrer le lien avec le propriétaire.

--
Bon dev,
Jean-Pierre
Message modifié, 16 juillet 2025 - 09:42