OVH Cloud OVH Cloud

calcul à stocker dans une table

2 réponses
Avatar
mycpi
Bonjour
Depuis mon formulaire je souhaite compl=E8ter un champ de ma table
suivant la formule :
=3D A/(B*B)
comment puis-je faire sachant que le r=E9sultat soit ne s'affiche pas
soit quand je lance une requete me dit que je n'ai pas pr=E9vu assez de
d=E9cimales or j'ai indiqu=E9 25 et que je souhaite n'en afficher que 1
au final ?
J'ai essay=E9 en cr=E9ant une requete mise =E0 jour associ=E9 =E0 une macro
cela a fonctionn=E9 un temps.
J'ignore pourquoi, depuis quelques jours cela ne veut plus fonctionner.
J'ai m=EAme essay=E9 un code mais cela ne marche pas.
De plus le r=E9sultat est bizarre puisqu'il me donne exemple :
1,234567891+0-123 ou quelque chose comme cela.
Merci de m'aider.

2 réponses

Avatar
Didier Bicking
Il est possible de t'aider, mais je ne sais pas s'il le faut. En effet, une
bonne gestion des bases de données n'autorise pas de stocker le résultat
d'un calcul dans une table. Si tu le fais, tu as dans tes tables trois
valeurs A, B et C (le résultat). Si tu modifies A ou B, il est nécessaire
d'actualiser C car sinon tes données sont incohérentes.

Le mieux est de faire en sorte, dans les formulaires ou les états, de
recalculer C chaque fois qu'il est nécessaire de le voir. De la sorte, toute
modification de A ou de B sera automatiquement prise en compte.

--
Didier Bicking

http://perso.wanadoo.fr/dbicking


"mycpi" a écrit dans le message de
news:
Bonjour
Depuis mon formulaire je souhaite complèter un champ de ma table
suivant la formule :
= A/(B*B)
comment puis-je faire sachant que le résultat soit ne s'affiche pas
soit quand je lance une requete me dit que je n'ai pas prévu assez de
décimales or j'ai indiqué 25 et que je souhaite n'en afficher que 1
au final ?
J'ai essayé en créant une requete mise à jour associé à une macro
cela a fonctionné un temps.
J'ignore pourquoi, depuis quelques jours cela ne veut plus fonctionner.
J'ai même essayé un code mais cela ne marche pas.
De plus le résultat est bizarre puisqu'il me donne exemple :
1,234567891+0-123 ou quelque chose comme cela.
Merci de m'aider.
Avatar
david
salut,

normalement (comme la dit didier), on ne stocke pas de résultat de
calculs dans des tables (a quelques exceptions).

Donc, prends l'habitude à chaque fois que tu crées une table (par
exemple maTable) de créer avec une requete (maTableCC) qui retourne la
clé 1° et toutes les valeurs calculées dont tu as besoin.
Par exemple : une table adresses contient (n°+Rue, CP, Ville) et
adressesCC (n° Departement, ...)

Si tu as besoin de test champs calculés, utilise une jointure enrte la
table et la requête.

A+, david