Problème de relation entre les tables

Résolu/Fermé
Ordan Messages postés 4 Date d'inscription vendredi 29 novembre 2019 Statut Membre Dernière intervention 4 décembre 2019 - 29 nov. 2019 à 07:42
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 - 4 déc. 2019 à 12:11
Bonjour,

Je connais relativement bien EXCEL et le VBA mais je débute sous ACCESS. J'essaie de développer ma première application et je rencontre déjà des difficultés. C'est la première fois que je m'inscris sur un forum et j'ai besoin d'aide.

Mon problème :

J'ai 3 tables

Table 1 : COMMANDES. Chaque commande a un numéro unique et ne concerne qu'un seul produit

Table 2 : LIVRAISONS. Une même commande peut être livrée en plusieurs fois. Chaque livraison a un numéro de BL (bon de livraison). Par exemple pour la commande N° 1 j'ai 4 BL numérotés de 1 à 4

Table 3 : FACTURES. Une même commande peut engendrer plusieurs factures. Par exemple la facture N° 1 concernera le BL N° 1, la facture N° 2 concernera les BL N° 2 et 3, la facture N° 3 concernera le BL N° 4.
C'est à dire que pour la facture N° 2 j'aurai 2 lignes de détail

Dois-je créer une 4ème table (Détail facture) ?
Comment créer mes relations ?

Merci d'avance


Configuration: Windows / Chrome 78.0.3904.108

5 réponses

yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471
29 nov. 2019 à 14:38
bonjour, moi je mettrais le numéro de facture dans la table LIVRAISONS.
tu obtiendras le détail de la facture via une requête.
0
Ordan Messages postés 4 Date d'inscription vendredi 29 novembre 2019 Statut Membre Dernière intervention 4 décembre 2019
29 nov. 2019 à 17:22
Merci yg_be pour la rapidité avec laquelle tu m'as répondu.
Je n'aurai pas le temps d'y réfléchir avant la semaine prochaine mais je ne manquerai pas de te tenir au courant
Encore merci
0
Ordan Messages postés 4 Date d'inscription vendredi 29 novembre 2019 Statut Membre Dernière intervention 4 décembre 2019
3 déc. 2019 à 06:06
Bonjour yg_be
De retour après un W-E de loisir, je me replonge dans ma base de données. Ta solution peut fonctionner mais elle ne me satisfait pas pleinement. En effet je peux effectuer plusieurs livraisons à des dates différentes avant de les facturer. Je ne connais donc pas le N° de facture au moment de la livraison et je devrai retourner sur la table LIVRAISONS après facturation.
Peut-on imaginer une autre solution ?
En attendant je continue de chercher ...
0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471
3 déc. 2019 à 10:43
contrairement à Excel, la structure des tables Access ne doit pas être influencée par les interactions avec l'utilisateur.
si tu utilises des formulaires et du code VBA, les mises à jour des tables se feront automatiquement par le VBA, sans que "tu" ne doives retourner dans la table Livraisons.
0
bonjour
3 type de relations existent 1 à 1, 1 à plusieurs et sans
la plus usuelle est un a plusieurs.
je ferai une liaison entre commande et livraison, livraison et facture.

Commande a 1 sur le champ IdCde en N°auto, IdCde en numerique dans livraison,
Livraison a 1sur le champ IdLiv en N°auto,IdLiv en numérique dans la table livraison,
Facture a 1sur le Champ IdFac en N° auto,
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Ordan Messages postés 4 Date d'inscription vendredi 29 novembre 2019 Statut Membre Dernière intervention 4 décembre 2019
4 déc. 2019 à 10:17
Comme je vous l'ai indiqué sur mon premier message je débute sur ACCESS et je m'aperçois que j'ai encore du chemin à faire ...
Aussi, je vais continuer à me former à l'aide de bouquins et de tutoriels. Quand je serai un peu plus au point, je reviendrai sur ce forum pour demander de l'aide.
En attendant, je vous remercie de m'avoir répondu et vous dis à bientôt.
0
yg_be Messages postés 22707 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 19 avril 2024 1 471
4 déc. 2019 à 12:11
parfait! peux-tu alors marquer le sujet comme résolu, via la roue dentée à droite du titre?
0