Logiciel : Access 2000 (SP-3)
Expérience en développement SGBD: moyenne
Bonjour,
Je développe présentement une base de données pour gérer un programme alimentaire (contrôle des calories, des nutriments et des minéraux dans la consommation quotidienne).
Voici un détail des relations de mon modèle de données :
ENTITÉ : E002_Repas
RELATION (1 :N)
ENTITÉ : E005_Produit
RELATION (1 :N)
ENTITÉ : E002_Repas
Voici un détail de mon schéma relationnel (3 tables)
TABLE 1 : E002_Repas (E002D001IdentifiantRepas, E002D002TypeRepas)
TABLE 2 : A004_EstCompose (E002D001IdentifiantRepas, E005D001IdentifiantProduit, A004D001Quantite, A004D002UniteMesure)
Note : Le domaine de l’élément A004D002UniteMesure (Unite, Gramme, Millilitre) : boutons option dans mon formulaire.
TABLE 3 : E005_Produit (E005D001IdentifiantProduit, E005D002NomProduit, E005D003CalorieParUnite, E005D004CalorieParGramme, E005D005CalorieParMillilitre, E005D006ProtéineParUnite, E005D007ProtéineParGramme, E005D008ProtéineParMillilitre, etc…
Actuellement, mon formulaire REPAS intègre un sous-formulaire (PRODUIT) dans lequel l’usager choisit à chaque ligne (liste déroulante) un produit. L’ensemble des lignes constitue un repas complet. Pour chaque ligne, il inscrit une quantité et choisit (bouton option) l’unité de mesure (unite, gramme ou millilitre).
Comment faire pour associer la quantité inscrite à chaque ligne à la bonne donnée dans la table E005_Produit à partir du choix de l’unité de mesure dans la table A004EstCompose (bouton option (unite, gramme ou millilitre).
Exemple d’une ligne du sous-formulaire :
Produit : Pomme
Quantité : 100
Unité choisie : Gramme
La table E005_Produit contient l’information suivante :
E005D001IdentifiantProduit = Clé primaire
E005D002NomProduit = Pomme
E005D003CalorieParUnite = 90
E005D004CalorieParGramme = 0.5
E005D005CalorieParMillilitre = 0.05
E005D006ProtéineParUnite = 0
E005D007ProtéineParGramme = 0
E005D008ProtéineParMillilitre, etc…
Le résultat attendu :
100 gramme de pomme = 50 calories.
En espérant que ma question est pertinente sur ce forum.
P.-S. Il s’agit de ma première intervention sur ce forum.
Merci
Partager