PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV (earlier versions) → création d'une colone après un constuittablefichier
création d'une colone après un constuittablefichier
Started by Fabien, Oct., 11 2018 12:08 PM - 3 replies
Registered member
30 messages
Posted on October, 11 2018 - 12:08 PM
Bonjour,

j’essaie d'ajouter une colonne à une table construite à partir d'une requete, voici le code
ConstruitTableFichier(TABLE_ExtractMag, MaRequête, taRemplirTable)
chp est un Champ
xChamp est un Champ

chp <- TableEnumèreColonne(TABLE_ExtractMag,10)

xChamp <- ChampClone(chp, "COL_nb_ref")
xChamp..Largeur = chp..Largeur
xChamp..Libellé = "Nb_ref"


le code plant à partir de chp <- TableEnumèreColonne(TABLE_ExtractMag,10)

j'ai le message suivant :
Un élément de type 'chaîne ANSI' ne peut pas être converti vers le type 'champ'

une idée ?
Registered member
299 messages
Popularité : +16 (16 votes)
Posted on October, 13 2018 - 12:35 PM
Vous n'avez pas la possibilité, dans la requete, de prévoir le champ ?
Select Champ1, Champ2, ' ' as NouveauChamp from LaTable
Registered member
30 messages
Posted on October, 15 2018 - 2:17 PM
Effectivement,

la solution est simple et redoutablement efficace,

merci

(J'aurai aimé comprendre pourquoi mon code ne fonctionne pas cela dit...)
Registered member
939 messages
Popularité : +66 (68 votes)
Posted on October, 16 2018 - 1:22 PM
Bonjour Fabien,

pourquoi votre code ne fonctionne pas, car la méthode Champclone d'une table doit être appelée avant sont remplissage ( obligatoirement ).
Extrait de la documentation : ( https://doc.pcsoft.fr/fr-FR/?20026&name=CLF_Cloner_et_manipuler_des_colonnes_dans_un_champ_table )
Attention :
Il faut cloner les colonnes avant d'effectuer le remplissage du champ Table.

La méthode de Michel sera la plus simple, ou bien vous pouvez également Cloner vos colonnes, puis effectuer le remplissage de votre table manuellement avec le résultat de votre requête..


Fabien a écrit :
Effectivement,

la solution est simple et redoutablement efficace,

merci

(J'aurai aimé comprendre pourquoi mon code ne fonctionne pas cela dit...)