PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2025 → Champ table, Live Data et requête indépendante
Champ table, Live Data et requête indépendante
Iniciado por HerveG, 19,sep. 2019 10:53 - 5 respuestas
Miembro registrado
6 mensajes
Publicado el 19,septiembre 2019 - 10:53
Bonjour,

Je débute depuis quelques semaines sous Windev 24.
J'utilise dans une fenêtre un champ Table où j'affiche une liste de contacts (Nom, Adresse, CP, Ville...).
Pour ajuster la taille des colonnes, je souhaite utiliser la fonctionnalité "Live Data" dans l'éditeur de fenêtre mais je rencontre des difficultés.

Pour tester, dans une même fenêtre, j'ai mis 2 champs table. (Remplissage par fichier/requête, Chargé en mémoire)
1er champ table : je remplis le champ table directement depuis la "Table de la base de données" décrite dans l'analyse.
Pas de problème, le contenu s'affiche bien dans l'éditeur de fenêtre.
2ème champ table : je remplis le champ table avec une requête indépendante REQ_TiersListeOK qui renvoie les mêmes données.
Problème, le contenu ne s'affiche pas.

Je précise que j'utilise l'accès natif PostgreSQL.

Ma question, est-il possible d'utiliser la fonctionnalité "Live data" avec un champ table rempli par une requête ?
(Dans ce cas, pourquoi mon affichage ne fonctionne pas ?)
Mensaje modificado, 19,septiembre 2019 - 10:54
Miembro registrado
4.361 mensajes
Publicado el 19,septiembre 2019 - 12:32
Bonjour,
Bien entendu, "l'astuce" est d'exécuter la requête et de rafraîchir le champ table
SI HExécuteRequête(REQ_TiersListeOK) ALORS
TableAffiche(TABLE_......)
SINON
Erreur("Problème d'exécution de la requête"+CRLF+HErreurInfo)
FIN


--
Il y a peut être plus simple, mais, ça tourne
Miembro registrado
6 mensajes
Publicado el 19,septiembre 2019 - 13:25
Je n'ai pas été assez complet/clair, désolé.
Cela fonctionne en mode GO, mais pas en éditeur de fenêtre.

En mode éditeur de fenêtres :





En mode GO :





J'ai toutefois ajouter "l'astuce" à l'initialisation de la fenêtre, sans succès également.
Miembro registrado
4.361 mensajes
Publicado el 19,septiembre 2019 - 14:07
C'est plus ou moins logique, afin d'afficher des données, il faut qu'elles existent.
En mode création, la requête n'est pas exécutée donc il n'y a pas de données à afficher. On peut toutefois contourner ce problème en fermant l'éditeur de fenêtre, en exécutant la requête en mode test et en repassant en mode édition de fenêtre. On aura alors accès aux résultats de la dernière exécution de la requête.

--
Il y a peut être plus simple, mais, ça tourne
Miembro registrado
6 mensajes
Publicado el 19,septiembre 2019 - 14:59
Je ne dois pas faire la bonne manip, je n'ai toujours pas d'affichage "Live data" dans le 2ème champ table.

Ma manip :
Je ferme toutes les fenêtres du projet.
J'ouvre la requête REQ_TiersListeOK
Je la teste avec le bouton GO (Le résultat de la requête s'affiche en aperçu), je la laisse ouverte.
Ensuite j'ouvre la fenêtre avec les 2 champs tables.
Pas de changement, le 2ème champ table est toujours vide...






Pour info, la "conf" du 2ème champ table :





Merci du temps accordé à mon problème.
Miembro registrado
6 mensajes
Publicado el 19,septiembre 2019 - 17:22
Il y a peut-être une autre solution de contournement.
Ce que je souhaite au final, c'est pouvoir ajuster une largeur de colonne par défaut en fonction des données "prévues".

Quand on est en mode test, on peut modifier la taille des colonnes mais ces tailles modifiées ne sont pas répercutées à l'éditeur de fenêtres en mode édition.

On peut également ajuster la taille des champs de saisie en mode "test". (Clic droit dans la fenêtre > Personnaliser l'interface > Passer en mode modification)
Mais dans ce mode "modification", quand on touche à un champ table, on ne peut modifier que la taille globale de ce champ, pas les colonnes du champ table...

Je ne pense pourtant pas être le seul à avoir ce besoin et je pensais que le "Live data" était fait pour ça...