PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV (versões anteriores) → [W20] Utiliser une table hiérarchique d'une fenêtre interne dans un état
[W20] Utiliser une table hiérarchique d'une fenêtre interne dans un état
Iniciado por zzebulon, fev., 27 2025 3:34 PM - 5 respostas
Membro registado
21 mensagems
Publicado em fevereiro, 27 2025 - 3:34 PM
Bonjour,

J'ai déjà réalisé plusieurs états avec comme données des tables hiérarchiques.

Dans le cas qui me préoccupe, la table est dans une fenêtre interne (qui est dans un champs fenêtre interne).
Je peux réaliser l'état mais lorsque je veux l'exécuter, je butte sur une erreur :

"Erreur à la ligne 19 du traitement Procédure globale ImprimerEtat.
Vous avez appelé la fonction iImprimeEtat.
La table, source de données de l'état, est introuvable."

L'état est appelé depuis une procédure locale de la fenêtre interne :

Procedure PRIVÉE Action_ImprimeRésultatsAssistant()

ExécuteActionPrédéfinie(actOuvreEtat,ETAT_RésultatsAssistantRecherche)


Cette procédure est exécutée depuis un bouton de la fenêtre principale.
Si je place le bouton dans la fenêtre interne, cela ne change rien...

Merci d'avance pour vos bonnes idées.

Cordialement.
Mensagem modificada, fevereiro, 27 2025 - 3:34 PM
Membro registado
950 mensagems
Publicado em fevereiro, 27 2025 - 4:05 PM
Bonjour zzebulon,
Regardez si vous y parvenez avec cette méthode (il s'agissait de FI et Onglet mais le problème est semblable), Post #8 :

https://forum.pcsoft.fr/fr-FR/pcsoft.fr.windev/275417-appel-procedure-globale-qui-trouve-dans-fenetre-interne-275457/read.awp…

Cdlt
Membro registado
21 mensagems
Publicado em fevereiro, 27 2025 - 6:06 PM
Cédric_34 a écrit :
Bonjour zzebulon,
Regardez si vous y parvenez avec cette méthode (il s'agissait de FI et Onglet mais le problème est semblable), Post #8 :

https://forum.pcsoft.fr/fr-FR/pcsoft.fr.windev/275417-appel-procedure-globale-qui-trouve-dans-fenetre-interne-275457/read.awp…

Cdlt



Bonjour Cédric et merci pour l'aide.

Malheureusement cela ne résout pas mon problème : la solution proposée de lancer une procédure (qui visiblement est dans un onglet).

Dans mon cas, la procédure de lancement de l'état est bien lancée (je peux d'ailleurs aussi la placer dans la fenêtre externe) mais c'est l'exécution de l'état qui produit l'erreur indiquée. L'état ne retrouve pas la table hiérarchique à l'exécution...

PS : Je cherche en parallèle comment modifier la source des données au lancement de l'état.

Cordialement
Membro registado
950 mensagems
Publicado em fevereiro, 27 2025 - 7:15 PM
Pour la source,

NomSource (Propriété)
https://doc.pcsoft.fr/?2511035

pour le reste, je vais y réfléchir car toute la difficulté est de se mettre dans votre contexte.
Cdlt
Membro registado
950 mensagems
Publicado em fevereiro, 28 2025 - 1:36 AM
Dites-nous si la propriété NomSource vous a permis de localiser la table source de l'état (en précisant la fenêtre qui contient la table)
Quelque chose comme :

ETAT_RésultatsAssistantRecherche..NomSource = "Fen_FI.MaTABLE"

Cdlt
Membro registado
21 mensagems
Publicado em fevereiro, 28 2025 - 1:53 PM
Bonjour,

J'avais fini par trouver une solution. Mais ma réponse postée hier vers 19h00 n'a pas été publiée. Je la reposte donc :

Il faut ajouter dans le code d'initialisation de l'état une commande sous la forme :
MoiMême..NomSource = "FEN_Externe.CFI_ChampFenetreInterne.FI_FenetreInterne.TABLE_maTable"


Bien placer la référence à la source dans une chaine de texte.

Merci pour votre aide !

Cordialement.