Bonjour,
Je vous remercie tous deux pour vos réponses.
J'ai réussi à contourner le problème en fixant à l'avance la taille maxi de mes colonnes par :
sChaine = " ' "+ Complète("",FICHIERXXX.RUB1..Taille) + " ' as COL_11"
et ainsi de suite, car j'ai des rubriques de tailles très variables.
Mais j'ai bien bataillé pour arriver à rafraichir la table avec ces données, car je n'arrivais pas à réaffecter dans la table les valeurs calculées.
Si cela peut aider quelqu'un dans la même situation, voici le cheminement :
Je crée une requête de toutes pièces que j'exécute par :
HExécuteRequêteSQL( MaRequete , hModifieFichier , sTexteReq )
et je crée ensuite une table mémoire (avec mes colonnes calculées "à vide") :
ConstruitTableFichier( MATABLE , MaRequete, taAvecIDAuto+taRemplirTable+taAvecBinaire)
Puis j'efface la table :
TableSupprimeTout(TABLELIENS)
Les données disparaissent, mais les colonnes créées en automatique restent en place dans la table.
Ensuite, je calcule les valeurs des colonnes vides à l'intérieur d'une boucle de parcours de la requete et je recrée les lignes de la table avec les enregistrement de la requête modifiés :
sChaine est une chaine
HLitPremier(MaRequete)
TANTQUE PAS HEnDehors()
SI MaRequete.COL5 = MonCritere ALORS
nIndice est un entier = MaRequete.COL5
HlitrecherchePremier(FICHIERXXX, IDXXX, nIndice)
SI Htrouve(FICHIERXXX) ALORS
MaRequete.COL11 = FICHIERXXX.LaValeurQueJeVeux1
MaRequete.COL12 = FICHIERXXX.LaValeurQueJeVeux2
MaRequete.COL13 = FICHIERXXX.LaValeurQueJeVeux3
FIN
FIN
sChaine = HRécupèreEnregistrement(Marequete)
TableAjoute(MATABLE,sChaine)
HLitSuivant(MaRequete)
FIN
Et la table se trouve reconstituée... Ouf... Avec les bonnes valeurs... Re Ouf...
![](http://old.wdforge.org/uploads/ighi.gif)
Tout cela n'était franchement pas évident à trouver dans l'aide.
Si quelqu'un à une formule plus simple, j'en veux bien, mais j'avais essayé beaucoup de choses avant sans résultat (TableAffiche, FichierVersTableMemoire, etc...)
Cette contribution était de : http://old.wdforge.org/newbb/viewtopic.php?forum=14&topic_id=3620&post_id=15303