PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2025 → BUG : mapping table depuis HDéclareExterne
BUG : mapping table depuis HDéclareExterne
Iniciado por ricil, 24,mar. 2020 18:35 - 2 respuestas
Miembro registrado
223 mensajes
Publicado el 24,marzo 2020 - 18:35
Bonjour,

avez vous le même problème ?
avez vous une solution ?

Problème :
faire un mapping de table avec un HDéclareExterne dans un projet sans analyse (et vous ne pouvez pas en créer, c'est comme ça :( )
le code ci-dessous n'affichera rien.
Pour qu'il fonctionne il faut choisir dans les propriétés de la table, onglet contenu :
le type de remplissage = Fichier/Requête.
Mais vous ne pouvez pas, il est grisé car windev détecte que vous n'avez pas d'analyse et donc pas de fichier dans l'analyse
windev décide donc de grisé ce choix, merci bien !

vous prenez le même code dans un projet avec une analyse et un fichier qui n'a rien à voir avec le sujet et vous n'avez pas le problème car vous pouvez cocher cette case !!!!

HDéclareExterne("c:\monRep\F_Erreur_Graphique.fic", "F_Erreur_Graphique")
SI ErreurDétectée = Vrai ALORS
TitreSuivant("Erreur de déclaration du fichier F_Erreur_Graphique.fic")
Erreur(HErreurInfo())
SINON
Table_F_Erreur_Graphique..FichierParcouru = "F_Erreur_Graphique"
Table_F_Erreur_Graphique.ID..LiaisonFichier = "IDF_Erreur_Graphique"
Table_F_Erreur_Graphique.FEN..LiaisonFichier = "Fenetre"
Table_F_Erreur_Graphique.IMP..LiaisonFichier = "Imp_Ecran"

TableAffiche(Table_F_Erreur_Graphique)
TableAjuste(Table_F_Erreur_Graphique)
FIN


Seul Solution que j'ai trouvé mais qui n'est pas franchement à mon gout :
faire le tableau dans un projet avec analyse cochez la case
faire un copier coller dans le projet sans analyse
le tableau garde en mémoire le choix, malgré que la case soit grisé le choix est gardé
et la tout s'affiche !


aaaaaaaaaaaaaaah !;(
Miembro registrado
57 mensajes
Publicado el 25,marzo 2020 - 09:47
Dans ce genre de situation j'utilise une source de données qui se manipule après comme un fichier.

F_Erreur_Graphique est une source de données
HDéclareExterne("c:\monRep\F_Erreur_Graphique.fic", F_Erreur_Graphique)
SI ErreurDétectée = Vrai ALORS
TitreSuivant("Erreur de déclaration du fichier F_Erreur_Graphique.fic")
Erreur(HErreurInfo())
SINON
Table_F_Erreur_Graphique..FichierParcouru = F_Erreur_Graphique
Table_F_Erreur_Graphique.ID..LiaisonFichier = F_Erreur_Graphique.IDF_Erreur_Graphique
Table_F_Erreur_Graphique.FEN..LiaisonFichier = F_Erreur_Graphique.Fenetre
Table_F_Erreur_Graphique.IMP..LiaisonFichier = F_Erreur_Graphique.Imp_Ecran

TableAffiche(Table_F_Erreur_Graphique)
TableAjuste(Table_F_Erreur_Graphique)
FIN

A tester ....

--
Dr J-M des Grottes
Gestionnaire du Registre des Néphrologues Francophones de Belgique
CHU Tivoli
La louvière
Belgique
Miembro registrado
223 mensajes
Publicado el 26,marzo 2020 - 14:31
Solution :
Créer quand même une analyse
mettre dans l'analyse la définition de toutes les tables nécessaires
ne pas compiler l'analyse dans le composant
faire un hdeclareExterne au besoin
tu coup je peux faire les databinding par l'interface windev