Question Access

Résolu
Bonjour,

Je travaille sous Access 2000, et je veux créer une gestion de stock simple, c'est plus un suivi, pas de facturation etc...

c'est gérer sous Excel actuellement, mais comme on n'a plusieurs fournisseurs pour des produits différents, je cherche à centraliser tout cela sous Access, comme cela un seul accès et pas 36 tableaux Excel.

J'ai déjà créer pas mal de chose (comptabilité d'une asso, suivi de factures fournisseurs...) mais la je sèche.

J'ai 3 tables :

une table produit (clé primaire la ref du produit)

ref désignation stock initial stock final

une table entrée

ref date qté

une table sortie

ref date qté

j'ai créé une requête pour les entrées et une requête pour les sorties.

je n'arrive pas à regrouper les mouvements par date des entrées et des sorties.

en fait, dans mon test, si dans la même journée j'ai une entrée et deux sorties pour la même ref, il regroupe par date en fonction du nombre d'enregistrement, et si je fais un regroupement avec somme des ent et sort il ajoute 2 fois l'antrée.

Je voudrais avoir une seule ligne par date.

En clair :

10/07 ref a entrée 100
10/07 ref a sortie 42
10/07 ref a sortie 25

résultat recherché

ref date entrée sortie

a 10/07 100 67

Pour le calcul, ça ne me pose pas de problème.

J'ai cherché un peu partout, sans succès, désolé si la solution a déjà donnée et que je ne l'ai pas vu.

Merci de votre aide.

8 réponses

  1. Bonjour,
    Je pense qu'il faut créer deux requêtes de structure identique
    Ref - Date - Entrée - Sortie

    Nommer une requête Entrée et alimenter le champ Entrée et stocker un 0 dans le champ Sortie.
    Nommer une requête Sortie et alimenter le champ Sortie et stocker un 0 dans le champ Entrée .

    Ensuite créer une requête "union" à l'aide des deux requêtes crées précédemment.

    SELECT * FROM [Entrée]
    UNION SELECT * FROM [Sortie];
    0
    1. Bonjour
      La stock ce gère par la somme des entrées moins la somme des soties dans une requête de regroupement.
      Pour illustrer mes propos, dans le lien, un exemple simplifié, une table , une requete.
      : https://www.cjoint.com/?BGmmF6EaCTU
      0
      1. la gestion stock ne me pose pas de problème, seul le regroupement par date des entrées et sorties me dérange.
        0
    2. Bonsoir,
      Sers toi de la requête union pour créer une requête sélection qui regroupera les entrées sorties par date et produits.
      0
      1. Super, je dormirai moins bête ce soir, il me reste une question, par contre quand je veux faire un etat en partant de cette dernière requête, seul les ref mouvementées apparaissent, et pas les refs sans mouvements.. je continue de chercher.
        Merci de la soluce.
        0
    3. Normalement si tu as généré une entrée ta référence apparait dans la requête union.
      Pas d'entrée pas de stock ;D)
      0
      1. Encore merci pour ton aide, en effet, en réfléchissant un peu, c'est ce que je me suis dit. Comme je suis parti d'un fichier Excel pour importer les références et stock en cours, forcément pas d'entrée.
        J'ai donc créer un champ "reprise de stock" et je vais travailler en copier collé, ça ira plus vite que tout saisir à la main.
        Bonne journée.
        0
    4. un souci dans la requête union,

      lorsque tous les champs sont identiques, il n'y a pas de cumuls dans le nombres de sorties.

      N'y connaissant rien en SQL je ne vois pas comment faire pour que le cumul ne se fasse que par la REF et la DATE mais pas sur les mvts Entrées et Sorties.

      dans la requête

      SELECT * FROM [Entrée]
      UNION SELECT * FROM [Sortie];

      si j'ai plusieurs sorties avec la même qté, pas de cumul

      comment reformuler la requête pour ne prendre en compte que les champs ref et date, les autres champs sont incrémentés via une relation simple.

      Merci de votre aide.
      0
      1. Bonjour,
        Crées deux requêtes Entrée et Sortie sur lesquelles tu fais un regroupement avec somme sur les champs quantités, et ces requêtes serviront dans la requête union en lieu et place des requêtes sélections.

        SELECT * FROM [Cumul Entrée]
        UNION SELECT * FROM [Cumul Sortie];

        Cela devrait solutionner ton problème.
        Cordialement.
        0
      2. Bonjour,

        Si je fais cela sur les requêtes entrées et sorties existantes, je ne peux plus saisir de mouvements.

        Merci de ton aide.
        0
      3. C'est pourquoi, je te suggère de créer deux nouvelles requêtes qui serviront à regrouper tes mouvements par date et serviront de squelette à ta requête union.
        0
      4. Bonjour,

        Bon tout fonctionne et mes calculs sont exactes.

        Il Maintenant, j'ai plusieurs requêtes Union, et je voudrais fusionner ces requêtes dans un même état, est-ce possible ?
        0
      5. Bonjour,

        A priori, oui.
        En cas de problème donne moi un exemple concret afin que je regarde de plus près.
        Cordialement
        0
    5. Il me semble, je viens de tester en ajouter un mouvement sur le produit B même date et même qté et le cumul se fait.

      J'ai une table base qui reprends REF TYPE DESIGNATION

      Une table MVTS avec REF date entrée sortie

      Quand je sors à la même date la même qté pas de cumul.

      je vais essayé avec ton exemple, il est sans SQL ?

      Merci
      0
      1. juste une question comment fait t'on la saisie des entrées et sorties séparément ?
        0
        1. Dans la table tu remplis une quantitecde ou quantite vente seul avec une date
          un des 2 champs se trouve a zero
          Dans l'exemple je n'ai pas fait de formulaire
          0