Bonjour à tous ... J'utilise Access 2003.
Voici mon problème :
J'aimerais créer une requête qui me permet de voir toutes les entrées de matière par rapport à un certain département. Donc pour ce faire à la base, j'ai créer un formulaire dans lequel j'ai un champ destination. J'aimerais que lorsque l'on change le contenu de ce champ que mon sous formulaire se change aussi mais le problème est là ...
Mon sous-formulaire est basé sur une requête de sélection et c'set mon grand problème.
Voici les tables utilisées dans ma requête :
TB_MOUVEMENTS
pk_mouvement (NuméroAuto) --> Clé primaire reliée à la fk_mouvement de la table TB_ASSOCIATIVE
date_du_jour (Date)
numero_mouvement (Texte)
masse (Numérique)
nombre_piece (Numérique)
fk_ok (Numérique) --> Clé étrangère de la table TB_OF
fk_lingot (Numérique) --> Clé étrangère de la table TB_LINGOTS
fk_description (Numérique) --> Clé étrangère de la table TB_DESCRITPIONS
fk_departement_provenance (Numérique) --> Clé étrangère de la table TB_DEPARTEMENT
fk_visa (Numérique) --> Clé étrangère de la table TB_VISAS
TB_ASSOCIATIVE
fk_metaux (Numérique) --> Clé étrangère de la table TB_METAUX
fk_alliage (Numérique) --> Clé étrangère de la table TB_ALLIAGES
fk_titre (Numérique) --> Clé étrangère de la table TB_TITRES
fk_mouvement (Numérique) --> Clé étrangère de la table TB_MOUVEMENTS
(ces 4 clés étrangères forment une clé primaire)
TB_DEPARTEMENTS
pk_departement (NuméroAuto)
nom_departement (Texte)
Voici les champs que j'aimerais voir apparaîre dans ma requête :
pk_mouvement / date_du_jour / fk_of / fk_lingot / fk_description / fk_departement_provenance / fk_titre / fk_alliage / masse / nombre_piece / pk_departement
Voici la requête que j'ai fait avec le mode création de requête d'Access :
En fait les résultats de cette requête s'affichent comme suit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SELECT DISTINCT TB_MOUVEMENTS.pk_mouvement, TB_MOUVEMENTS.date_du_jour, TB_MOUVEMENTS.numero_mouvement, TB_MOUVEMENTS.fk_of, TB_MOUVEMENTS.fk_lingot, TB_MOUVEMENTS.fk_description, TB_MOUVEMENTS.fk_departement_provenance, TB_ASSOCIATIVE.fk_titre, TB_ASSOCIATIVE.fk_alliage, TB_MOUVEMENTS.masse, TB_MOUVEMENTS.nombre_piece, TB_DEPARTEMENTS.pk_departement FROM (TB_DEPARTEMENTS INNER JOIN TB_MOUVEMENTS ON TB_DEPARTEMENTS.pk_departement = TB_MOUVEMENTS.fk_departement_provenance) INNER JOIN TB_ASSOCIATIVE ON TB_MOUVEMENTS.pk_mouvement = TB_ASSOCIATIVE.fk_mouvement;
pk_mouvement / numéro_mouvement
1 / MVT_01
1 / MVT_01
2 / MVT_02
2 / MVT_02
3 / MVT_03
4 / MVT_04
4 / MVT_04
En fait dans les lignes il n'y a que les champs titre et alliage qui changent ...
Et je ne comprends pas comment faire pour que les mouvements ne s'affichent pas à double car là on peut voir que la pk_mouvment est répétée à double pour certain enregistrement. Comment puis-je faire pour éviter cela ?
Merci de vos réponses
Partager