PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → FI dans une table
FI dans une table
Débuté par Jean Turcotte, 16 juil. 2024 20:51 - 6 réponses
Membre enregistré
1 186 messages
Posté le 16 juillet 2024 - 20:51
Bonjour, j'ai configuré une FI dans ma table et j'aimerais pouvoir controler le déroulement et l'enroulement lorsque la FI contient des données ou pas mais je n'y arrive pas.

A chaque fois que je clic sur le bouton déroulé de la première colonne, la FI apparait, qu'elle contienne des données ou pas.

Y a t-il moyen d'éliminer ce bouton ou de l'intercepter par programmation?









Merci!

--
Jean Turcotte
WX 28
Android 9.0 sur Galaxy S8
Laptop Lenovo I7 12GB Ram
Membre enregistré
711 messages
Posté le 17 juillet 2024 - 00:06
Bonjour,
Vous avez l'évènement "Déroulé du détail d'une ligne de table ...." pour le code d'une table.

La fonction TableDéroule :
https://doc.pcsoft.fr/?1000010007

Avez-vous vu la section : Afficher le détail d'une ligne dans une fenêtre interne
https://doc.pcsoft.fr/?1013200

Vous devriez pouvoir vérifier le contenu de la FI pour déclencher ou non le Déroulement de la ligne.
Cdlt
Membre enregistré
4 123 messages
Posté le 17 juillet 2024 - 00:33
Bonjour,
Il suffit de contrôler l'existence de données dans source- qui alimente la FI (e.g. NHbEnr(REQ_RemplssageFI) ) dans l'évènement "déroulé du détail" et d'exécuter TableEnroule en cas de valeur nulle.
L'inconvénient de ce shunt sera que l'utilisateur ne pourra plus remplir les données du détail.
Il serait interressant de prévenir l'utilisateur qu'il n'y a aucune données à afficher.

--
Il y a peut être plus simple, mais, ça tourne
Message modifié, 17 juillet 2024 - 00:37
Membre enregistré
4 123 messages
Posté le 18 juillet 2024 - 03:23
Une autre solution pour shunter certains évènements est d'utiliser
RENVOYER Faux

Cela évitera un clignotement éventuel du au Déroulé/Enroulé

--
Il y a peut être plus simple, mais, ça tourne
Message modifié, 18 juillet 2024 - 03:23
Membre enregistré
1 186 messages
Posté le 18 juillet 2024 - 16:11
Merci pour vos réponse.

J'ai bien tenté de mettre 'Renvoyer Faux', 'Renvoyer Null' mais rien n'y fait, la ligne se déroule toujours.

--
Jean Turcotte
WX 28
Android 9.0 sur Galaxy S8
Laptop Lenovo I7 12GB Ram
Membre enregistré
711 messages
Posté le 18 juillet 2024 - 17:04
Bonjour
Votre code ne doit pas être correct (vérifiez la condition) car je parviens à empêcher le déroulement de la ligne.
Cdlt

Edit : pour précision, je place le code dans l'évènement "Déroulé du détail d'une ligne de table ..." que j'ai mentionné dans mon premier post.
Message modifié, 18 juillet 2024 - 17:15
Membre enregistré
1 186 messages
Posté le 18 juillet 2024 - 20:49
Effectivement, j'ai recréé une table et ça fonctionne alors je vais revérifier mon code.
Merci!

--
Jean Turcotte
WX 28
Android 9.0 sur Galaxy S8
Laptop Lenovo I7 12GB Ram