|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Inscription : mai 2007 Messages : 33 ![]() |
Bonjour,
Je voudrais savoir s'il est possible de constituer un champs dans une table qui soit le resultat d'un calcul d'autres champs. Explications : je fais une enquete mensuelle et je recolte des données brutes, de ces données brutes je calcule 4 indicateurs basiques que je cherche à conserver pour manipulations ulterieures. J'ai organisé ma base entre autre de la façon suivante : 1 table "Enseignes", 1table "Enqêtes" et 1 table "Données" qui fait office de "ligne de commande" pour pallier la relation n - n entre les tables Enseignes et enquêtes. ma table Enseignes est constituée des données classiques relatives aux clients. ma table Enquetes est constituée des champs suivants : IdEnquete NomEnquete DateEnquete ma table données est constituée des champs suivants : IdDonnée IdEnseigne IdEnquete NbreClients NbreChambresLouées NbreChambresDispo PrixMoyenChambre je dois calculer les 4 indicateurs suivants : TO = ([NbrechambresLouées]/[NbreChambresDispo])/100 IF = [NbreClients]/[NbreChambresLouées] PMC = PMC (donné demandée aux professionnels lors de l'enquête) RevPar = [TO] * [PMC] Pour l'instant ils sont calculés "en dur" dans mon formulaire de données, mais je voudrais pouvoir les conserver dans la table données au même titre que les autres champs; Ainsi comment dois je, si cela est possible, créer dans ma table Données les Champs TO, TI et RevPar (le PMC étant déjà une donnée brute): est ce que je dois inserer les formules de calculs dans la description du champs? Si cela n'est pas possible comment dois je proceder ? Il faut savoir que je dois ensuite pouvoir utiliser ces indicateurs pour en calculer leurs moyennes sur des zones géographiques différentes (j'ai une table Zones), voir sur des regroupements de zones, et comparer les données individuels à un temps t ou sur une periode t avec ces moyennes, et restituer les resultats sous forme de note de conjoncture individuelle et agrégée. en esperant que vous puissiez me renseigner... tieuphuong. |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() ![]() Inscription : avril 2006 Messages : 1 318 ![]() |
bonjour,
personnellement je procéderai ainsi : Créer seulement la colonne PMC dans la table enquête Pourquoi ? Si vous créer les colonnes TO, IF, etc... dans votre table enquete, on duplique en faite dans la même table une information (pas bon pour les mises à jour par exemple). Même chose si on créé une table de stats par enquete. Les calculs doivent être fait le plus tard possible lorsqu'ils sont nécessaires. C'est à dire, s'ils interviennent dans le résultat retourné par une requete, faire le calcul à ce moment là. S'ils doivent simplement être affichés, faire le calcul dans le formulaire ou l'état. Pour éviter de dupliquer les formules de calcul, faire des fonctions VBA qui retourne le résultat, et les appeler systématiquement à chaque fois que le calcul doit être réalisé. (bien que dans votre cas, les calculs sont simples !) Ce point de vue n'engage que moi, j'espère que d'autres personnes vous proposeront le leur. Le temps passé à bien réfléchir au modèle de données sera toujours du temps gagné au développement présent et futur (ne pas prévoir, c'est déjà gémir disait machin) cordialement, philippe |
|
00
|
|
|
#3 |
|
Candidat au titre de Membre du Club
![]() Inscription : mai 2007 Messages : 33 ![]() |
Merci pour votre reponse, elle correspond à la première façon dont j'avais imaginé la chose au début du projet... mais comme j'ai du mal avec VBA l'option table m'aurait permis d'avoir une solution de facilité...
tieuphuong |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com