PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV 2024 → Table sur source et objet dynamique
Table sur source et objet dynamique
Started by Hacyrak, Sep., 21 2021 3:47 PM - 9 replies
Posted on September, 21 2021 - 3:47 PM
Bonjour,

J'aimerai remplir une table sur source par programmation (gérer le nombre de colonne + la liaison à la source).
Ma colonne NOM apparait bien mais je n'est aucune données dans la table.

Déclarations globales :
gtabObj est un tableau dynamique d'objet (ma Source)

Procedure init(sClasse est une chaîne) :
o est un objet dynamique = allouer un sClasse
gtabObj = o:getAll() //parcours de gtabObj OK j'ai bien mes informations

SELON sClasse
CAS CGenerale.MACLASSE
NoColonne est un entier
NoColonne = TABLE_ListeObj..NombreColonne + 1

newCh est un Champ <- ChampClone(TABLE_ListeObj.COL_Obj, "Colonne" + NoColonne, ...
TABLE_ListeObj..NombreColonne + 1 )
Trace(newCh..Nom)
newCh..Libellé = "NOM"
newCh..LiaisonFichier = "gtabListeObj.p_sNom"
Trace(newCh..LiaisonFichier)
AUTRE CAS

FIN
TableAffiche(TABLE_ListeObj) //Je n'ai pas les infos mais la colonne est bien créer
Registered member
287 messages
Popularité : +51 (79 votes)
Posted on September, 21 2021 - 4:37 PM
newCh..LiaisonFichier = "gtabListeObj.p_sNom"


Essaye plutôt
newCh..LiaisonFichier = "p_sNom"


--
667, EKIP EKIP
Posted on September, 21 2021 - 4:42 PM
Merci mais aucune des solutions suivante ne fonctionne :

newCh..LiaisonFichier = "gtabListeObj.p_sNom"

OU
newCh..LiaisonFichier = ":gtabListeObj.p_sNom"

OU
newCh..LiaisonFichier = "p_sNom"

OU
newCh..LiaisonFichier = ":p_sNom"
Registered member
287 messages
Popularité : +51 (79 votes)
Posted on September, 21 2021 - 5:35 PM
J'ai du mal à lire ton code, gtabListeObj sort d'ou ?

Je suis sur que le code newCh..LiaisonFichier = ":gtabListeObj.p_sNom" Devrai marcher vérifie bien le nom de l'objet

--
667, EKIP EKIP
Posted on September, 22 2021 - 9:59 AM
Pardon petit soucis dans la recopie du code dans mon premier post :
ma variable gtabListeObj est la bonne (et non gtabObj) elle est correcte partout dans mon code mais cela ne fonctionne pas.

Par contre je travail sur un modèle de champs peut être le problème vient de là.
Registered member
287 messages
Popularité : +51 (79 votes)
Posted on September, 22 2021 - 10:40 AM
Et ta variable gtabListeObj se situe ou dans le code ? c'est important la portée

--
667, EKIP EKIP
Posted on September, 22 2021 - 10:47 AM
Cette variable est une variable globale au modèle.
Si je test :
gtabListeObj est un tableau de MVehicule

Au lieu de :
gtabListeObj est un tableau d'objet dynamique

Cela fonctionne parfaitement. Le problème est donc la liaison avec un tableau d'objet dynamique.
Registered member
287 messages
Popularité : +51 (79 votes)
Posted on September, 22 2021 - 11:26 AM
> Cela fonctionne parfaitement. Le problème est donc la liaison avec un tableau d'objet dynamique.

ça tient la route étant donné qu'on ne peut pas lié une table à un tableau d'objet dynamique à partir de l'onglet contenu de la table

--
667, EKIP EKIP
Posted on September, 22 2021 - 11:28 AM
Oui j'ai trouvé pour mon problème :
Ne pas utiliser un tableau d'objet dynamique mais un simple tableau dynamique.
Cela fonctionne alors parfaitement. La liaison s'effectue correctement.
Registered member
287 messages
Popularité : +51 (79 votes)
Posted on September, 22 2021 - 11:37 AM
Carré

--
667, EKIP EKIP