Re: Boucle...

Posté par drcharly93 le 19/4/2006 14:01:19
Bonjour Julien,

Approche erronée,

Pour effectuer ce genre de calcul il est nécessaire que d'une seule procédure

Pour effectuer un calcul dans une table mémoire on utilisera l'indice de la ligne pour effectuer les calculs
Procedure Calcul()
i est un entier
nRes est un entier
sNomTable est une chaine = "MaTable"

Pour i = 1 à TableOccurrence(sNomTable)
nRes = {"MaTable.<Nom de la colonne>"}[i] * {"MaTable.Nom de la colonne2"}[i]
{"MaTable.<Nom de la colonne resultat"} = nRes
Fin


Maintenant si il faut effectuer un calcul à partir d'une table fichier l'approche est différente

Dans ce cas on ne peut utiliser un bouton mais plutôt effectuer le calcul à chaque affichage de ligne
Ici on ne peut utiliser l'indice des ligne car sur une table fichier seule les lignes visible à a l'écran sont chargées,
On manipulera donc les champs qui viennent de s'afficher et ce pour chacune des lignes qui s'affichent.
dans le bloc 'Affichage d'une ligne de <Ma Table>'
i est un entier
nRes est un entier
sNomTable est une chaine = "MaTable"

nRes = {"MaTable.<Nom de la colonne>"} * {"MaTable.Nom de la colonne2"}
{"MaTable.<Nom de la colonne resultat"} = nRes

Cette contribution était de : http://old.wdforge.org/newbb/viewtopic.php?forum=14&topic_id=3876&post_id=16269