PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Recuperer un total d'une table pour l'afficher dans un champ saisie
Recuperer un total d'une table pour l'afficher dans un champ saisie
Débuté par dduval, 05 jan. 2006 15:11 - 6 réponses
Posté le 05 janvier 2006 - 15:11
Je souhaite recuperer le total numeraire de la colonne1 pour l'afficher dans le champ de saisie1

J'initialise avec la ligne
Table_listedescommande..TotauxActif=Vrai

Dans la rubique fin d'initialisation j'ecris
Saisie1=Table_listedescommande.Colonne1[ligneTotal]

Et voici le resultat

Erreur à la ligne 1 du traitement Fin d'initialisation de Table_listedescommande.
L'indice spécifié [2147418113] est invalide.
Table_listedescommande utilise un fichier ou une requête comme source de données.
Seuls les éléments visibles sont disponibles en programmation.


Un conseil? Un avis? J'ai lu la doc mais cela n'est pas bien clair


Merci
Posté le 05 janvier 2006 - 15:40
C'est pas très orthodoxe mais je m'en sers souvent

NbLigne est un entier = tableoccurence(Table_listedescommande)
mTotal est un monétaire

Pour i = 1 à NbLigne
mTotal = mTotal + Table_listedescommande.Colonne1[i]
fin

Saisie1=mTotal
Posté le 05 janvier 2006 - 16:21
Je suppose que tu as vérifié que tu n'avais pas un champ ou une colonne de table intitulée LigneTotal.
Je sais, c'est idiot mais cela arrive.

Ni que tu avais 2 147 418 113 enregistrements... :-)


J'ai fait le test chez moi sans problème sur une table fichier (en WD9).

Dommage que Ed en Ligne soit en vacances, il aurait peut-être eu une idée pour t'aider.

Sinon, essayes le Support technique.

Bon dev
Jean-Pierre
Posté le 05 janvier 2006 - 16:48
Regarde du côté de la visibilité des totaux dans ta table, il faut peut être qu'ils soient visible pour les utiliser

Dans ta fenêtre des 7 onglets, mets en place les totaux sous la table et cela devrait marcher...
Posté le 05 janvier 2006 - 17:07
nuovelle syntaxe W10

POU TOUTE LIGNE DE Table_listedescommande
mTotal = mTotal + Table_listedescommande.Colonne1
FIN

.......

POU TOUTE LIGNE SELECTIONNEE DE Table_listedescommande
mTotal = mTotal + Table_listedescommande.Colonne1
FIN

cordialement JCP


"Fraydd" <fraydd@yahoo.fr> a écrit dans le message de news:
43bd2149$1@news.pcsoft.fr...

C'est pas très orthodoxe mais je m'en sers souvent

NbLigne est un entier = tableoccurence(Table_listedescommande)
mTotal est un monétaire

Pour i = 1 à NbLigne
mTotal = mTotal + Table_listedescommande.Colonne1[i]
fin

Saisie1=mTotal
Posté le 06 janvier 2006 - 11:08
Bonjour et bonne année

La ligne total d'une table contient tous les totaux.

Pour récupérer une valeur particulière, il faut utiliser dans ton cas :
Saisie1 = Val(ExtraitChaîne(Table_listedescommandes[ligneTotal]..Valeur,n° de colonne))

dans ton cas, n° de colonne = 1

Cordialement,

C.AUBRY
Posté le 16 janvier 2006 - 14:31
Il me manquait effectivement une case à cocher dans l'onglet general pour avoir le total sous la colonne specifié.



Merci pour l'aide et desolé pour le retard concernant les remerciements.