Comment faire la synthèse des mouvements entrées et sortie stock

Résolu/Fermé
Eric - 27 oct. 2020 à 09:22
RV71 Messages postés 509 Date d'inscription mardi 14 avril 2020 Statut Membre Dernière intervention 15 avril 2024 - 28 oct. 2020 à 12:28
Bonjour chers tous.
J'ai un fichiers access qui contient la table "mouvements". Cette table retrace les mouvement des entrés et des sorties. Ma question : comment faire une requête qui peut simplement synthétiser le tout? C'est-à-dire pour chaque produit son total des entrées et son total des sortie. Que ça fonctionne correctement même si on ajoute des nouveaux articles. Merci d'avance.
Voici mon fichier ci-joint.
https://www.cjoint.com/c/JJBipxAbkAd
A voir également:

3 réponses

RV71 Messages postés 509 Date d'inscription mardi 14 avril 2020 Statut Membre Dernière intervention 15 avril 2024 31
27 oct. 2020 à 17:34
Bonjour,

tu peux faire une requête avec un regroupement sur le produit et le type de mouvement.
Tu auras ainsi une ligne par produit et type de mouvement et la somme (une ligne somme des entrées MANGUE et une ligne somme des sorties MANGUE).
Dans ton cas ça sera :
SELECT produits.Designation, Mouvements.TypeMov, Sum(Mouvements.Qtecommande) AS SommeDeQtecommande
FROM produits INNER JOIN Mouvements ON produits.IdProduit = Mouvements.IdProduit
GROUP BY produits.Designation, Mouvements.TypeMov;


Je pense qu'il serait peut-être pas mal du coup de faire une requête analyse croisée, avec pour chaque ligne produit, une colonne somme entrées et une colonne somme sorties (une ligne MANGUE avec 1 colonne entrée et 1 colonne sorties) :
TRANSFORM Sum(Mouvements.Qtecommande) AS SommeDeQtecommande
SELECT produits.Designation
FROM produits INNER JOIN Mouvements ON produits.IdProduit = Mouvements.IdProduit
GROUP BY produits.Designation
PIVOT Mouvements.TypeMov;




A+
0
Merci beaucoup. Ton code a très bien marché.
Alors que faire si je veux entrer une date de début et de et une datefin ( je veux créer un "txtdatedebut" et "txtdatefin" j'ai un champs "datemov") Merci a toi et merci a tous
0
bonjour
pour connaitre le stock, dans une requete il faut faire la somme des entrées moins la somme des sorties.
0
Merci castour pour cette précision
0
RV71 Messages postés 509 Date d'inscription mardi 14 avril 2020 Statut Membre Dernière intervention 15 avril 2024 31
Modifié le 28 oct. 2020 à 12:29
Pour mettre une condition (WHERE) sur ton champ date utilise BETWEEN dans l'instruction sql.

Tes txtdatedebut et fin seraient j'imagine sur un formulaire ?

Alors fais comme cela (en adaptant les noms du form et des txtbox)
TRANSFORM Sum(Mouvements.Qtecommande) AS SommeDeQtecommande
SELECT produits.Designation
FROM produits INNER JOIN Mouvements ON produits.IdProduit = Mouvements.IdProduit
WHERE Mouvements.DateMov Between forms!formulaireSaisie!txtdatedebut And forms!formulaireSaisie!txtdatefin
GROUP BY produits.Designation
PIVOT Mouvements.TypeMov;


A+
0