Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Looping Discussion :

Gestion de stock et vente


Sujet :

Looping

  1. #1
    Futur Membre du Club
    Gestion de stock et vente
    Bonjour à toutes et à tous,

    Après quelques jours de réflexion j'ai décidé de me lancer et publier mon MCD pour bénéficier de votre aide et de vos conseils,
    Je dois réaliser une application en windev/MySQL pour la gestion du stock et vente de deux magasins.
    Il y a aussi les mouvements de stocks. Je souhaite que vous partagiez vos connaissances afin que je puisse améliorer ma base de données.

    En effet, nous avons quelques règles de gestion:
    - il y a deux types de vente (ventes directes et les ventes sur bon de commande)
    - il y a deux types d'achats directs et les achats sur bon de commande)
    - le client peut acheter un produit à un prix différent des autres clients
    - il peut arriver que les produits demandés se trouvent dans deux magasins
    - certains produits ne sont pas assujettis à la tva
    - il y a des remises spéciales pour certaines commandes dont le montant supérieur à un montant fixés
    - il y a des ventes à crédit
    -

    Il y a le MCD en pj et le script SQL.

    Merci d'avance de votre aide,
    Cordialement

  2. #2
    Expert éminent sénior
    Bonjour Zeus_Appolos

    Malheureusement, le schéma est tout petit, je n'arrive pas à le déchiffrer. Il faudrait le scinder en plusieurs partie pour le rendre plus lisible.

  3. #3
    Futur Membre du Club
    bonjour escartefigue, merci de votre réponse

    j'ai fait le mcd avec un logiciel gratuit "looping".

    veuillez trouvez ci-joint les fichiers du mcd découpé en trois

    je vous remercie d'avance

  4. #4
    Expert éminent sénior
    Bonjour,

    D'une façon générale, il manque les règles de gestion.


    Au sujet de la partie haute du schéma

    [client] il manque un attribut numéro fonctionnel du client.
    L'adresse du client, si elle est unique et obligatoire, peut être modélisée dans l'entité-type client, mais elle ne saurait être un attribut unique.
    Si vous avez plusieurs adresses possibles (de livraison, de facturation etc.), alors il faut modéliser une entité-type adresse en relation 0,n ou 1,n avec le client.
    Dans tous les cas, la ville est à externaliser de l'adresse, une même ville pouvant correspondre à plusieurs adresses.
    Même raisonnement pour le téléphone que pour les adresses : s'il est unique et obligatoire, ok pour le positionner dans le client, sinon il faut une entité-type téléphone en association avec le client.
    (vous en profiterez pour typer le téléphone : fixe pro, fixe domicile, portable pro, portable perso...)


    De [condition speciale] vers [commande client] la cardinalité maximale de 1 signifie que cette condition n'est applicable qu'à une seule commande, surprenant. À confirmer (règle de gestion à écrire).
    De [commande client] vers [condition speciale] la cardinalité maximale de n signifie qu'on peut appliquer plusieurs taux de remise à une même commande. Dans ce cas, faut il les cumuler ? Sinon précisez ce qu'il faut faire ou corrigez la cardinalité maxi. Par ailleurs, ce lien implique que le taux (ou le cumul des taux) s'applique à toutes les lignes de la commande.


    [Ligne commande client] la présence d'un attribut remise semble être redondant avec le(s) taux appliqué(s) à l'ensemble de la commande. À moins qu'il s'agisse d'une remise supplémentaire spécifique à cette ligne de commande ? À préciser pour plus de clarté.


    De [produit] vers [Ligne commande client], la cardinalité minimale de 1 vous interdit de créer un produit tant qu'il n'est pas commandé au moins une fois, à remplacer par zéro.


    [produit] il manque une référence du produit
    comme on voit qu'un produit peut être stocké dans plusieurs magasins, l'attribut "stock initial" est donc la somme des stocks initiaux dans chaque magasin. C'est donc une redondance à supprimer.
    Sauf si tous vos produits sont comptés avec la même unité de mesure, il faut ajouter un attribut "unité de mesure" de la quantité (à la pièce, au mètre linéaire, litre, sachet, kilogramme...)


    À suivre, mais commencez par bien rédiger toutes les règles de gestion en leur attribuant un identifiant, ca facilite la discussion

  5. #5
    Futur Membre du Club
    Merci escartefigue de votre intervention,
    j'ai pris en compte vos suggestions et corrections

    De [condition speciale] vers [commande client] la cardinalité maximale de 1 signifie que cette condition n'est applicable qu'à une seule commande, surprenant. À confirmer (règle de gestion à écrire).
    De [commande client] vers [condition speciale] la cardinalité maximale de n signifie qu'on peut appliquer plusieurs taux de remise à une même commande.
    Dans ce cas, faut il les cumuler ? Sinon précisez ce qu'il faut faire ou corrigez la cardinalité maxi. Par ailleurs, ce lien implique que le taux (ou le cumul des taux) s'applique à toutes les lignes de la commande.
    c'est une bétise de ma part

    [Ligne commande client] la présence d'un attribut remise semble être redondant avec le(s) taux appliqué(s) à l'ensemble de la commande.
    À moins qu'il s'agisse d'une remise supplémentaire spécifique à cette ligne de commande ? À préciser pour plus de clarté.
    il y a des remises sur certains produits commandés selon le client. c'est ce qui justifie la présence du taux de remise sur les lignes de commande
    par contre, la remise spéciale est appliquée pour les gros achats, elle s'applique sur le montant de la commande (le montant de la command à atteint un seuil).

    De [produit] vers [Ligne commande client], la cardinalité minimale de 1 vous interdit de créer un produit tant qu'il n'est pas commandé au moins une fois, à remplacer par zéro.
    Merci c'est corrigé

    [produit] il manque une référence du produit
    comme on voit qu'un produit peut être stocké dans plusieurs magasins, l'attribut "stock initial" est donc
    la somme des stocks initiaux dans chaque magasin. C'est donc une redondance à supprimer.
    Merci c'est corrigé

    Sauf si tous vos produits sont comptés avec la même unité de mesure, il faut ajouter un attribut "unité de mesure" de la quantité (à la pièce, au mètre linéaire, litre, sachet, kilogramme...)
    il y a une relation ternaire entre produit-magasin-unite
    l'entité type UNITE est aussi liée à la ligne de commande

    À suivre, mais commencez par bien rédiger toutes les règles de gestion en leur attribuant un identifiant, ca facilite la discussion
    cette gestion concerne un magasin de quincaillerie
    - un produit commandé dans une unité (carton) peut etre livré dans des caisses
    - il y a deux types de vente (ventes directes et les ventes sur bon de commande)
    - il y a deux types d'achats directs et les achats sur bon de commande)
    - le client peut acheter un produit à un prix différent des autres clients
    - il peut arriver que les produits demandés se trouvent dans deux magasins
    - certains produits ne sont pas assujettis à la tva
    - il y a des remises spéciales pour certaines commandes dont le montant supérieur à un montant fixés
    - il y a des ventes à crédit
    - un client peut etre lié à plusieurs adresses (entreprises surcussales)
    - un peut avoir une reduction sur certains produits commandés
    - un client a une reduction spéciale si le montant de la commande depasse un montant seuil
    - on veut connaitre à date l'état d'une commande (en cours, annulée, terminée)
    - les clients passent par des commandes ou viennent directement dans le magasin pour faire des achats (sans passer par un devis)
    - certains clients règlent leurs factures 30 jours àpres la livraison
    - le magasin gère aussi les retours de produits par des factures d'avoir
    - un client peut regler sa facture en trois tranche de commun accord

    NB: - le magasin souhaite appliqué des tarifs gros, demi-gros et détail (1 mêtre de cable FTP coûte 300 F ; 100 mêtre coute 25000 F)
    je peine sur ce cas

    le mcd modifié est ci-joint

  6. #6
    Futur Membre du Club
    concernant les coûts dégressifs voici ci-jointe ma proposition. j'ai besoin de votre avis

  7. #7
    Membre éprouvé
    Bonjour,
    Citation Envoyé par Zeus_Appolos Voir le message
    concernant les coûts dégressifs voici ci-jointe ma proposition. j'ai besoin de votre avis
    Attention aux tripattes !
    Dans votre cas, cela signifie qu'un même produit peut avoir un prix de vente différent en fonction de son unité de mesure et de sa quantité vendue.
    C'est tout à fait possible, mais si votre unité de mesure correspond, par exemple, à m², ml, kg, paquet de 12, unité, ... se pose alors la question de votre tenue de stock...
    Pour plus de clarté, je pense qu'il faudrait parler de "conditionnement", et s'interroger sur le fait qu'un même produit avec plusieurs conditionnements devrait peut-être avoir des références différentes : l'unité deviendrait alors un simple attribut du produit ou, si vous voulez maintenir la classe d'entités "unité", l'associer simplement à "produit" avec une cardinalité 1,1---1,N.
    Sinon, il est nécessaire de clarifier le lien qui peut exister entre "unité" et "quantité".

    Bonne continuation.
    Patrick Bergougnoux - Professeur des Universités au Département Informatique de l'IUT de Toulouse III
    La simplicité est la sophistication suprême (Léonard de Vinci)
    LIVRE : Modélisation Conceptuelle de Données - Une Démarche Pragmatique
    Looping - Logiciel de modélisation gratuit et libre d'utilisation

  8. #8
    Futur Membre du Club
    Merci beaucoup Paprick
    j'approuve votre idée

    Pour plus de clarté, je pense qu'il faudrait parler de "conditionnement"
    ce terme est nouveau pour moi. je comprend pas son utilisation
    Excusez-moi si mes questions sont un peu bêtes. je suis nouveau en développement et analyse

    et s'interroger sur le fait qu'un même produit avec plusieurs conditionnements devrait peut-être avoir des références différentes :
    l'unité deviendrait alors un simple attribut du produit ou, si vous voulez maintenir la classe d'entités "unité",
    l'associer simplement à "produit" avec une cardinalité 1,1---1,N.
    j'ai pris en compte vos suggestions. le nouveau mcd est ci-joint


    C'est tout à fait possible, mais si votre unité de mesure correspond, par exemple, à m², ml, kg, paquet de 12, unité, ...
    se pose alors la question de votre tenue de stock...
    Avec le conditionnment, comment svp sera la tenue de mon stock? autrement dit dois-je joindre conditionnement à ma table stock,ligne commande,ligne facture, ligne bon de livraison?

  9. #9
    Futur Membre du Club
    après ce lien https://www.developpez.net/forums/d2...ites-articles/
    j'ai intégré le conditionnement du produit dans le mcd que me recommandait Paprick.

    le nouveau mcd est ci-joint pour votre avis. avec le zoom c'est très lisible
    merci à tous les intervenants

  10. #10
    Expert éminent sénior
    Bonjour Zeus_Appolos,

    Désolé non : le zoom est inopérant sur l'image du MCD, il n'agit que sur le texte.
    J'ai essayé avec Chrome et Firefox, même résultat

    Du coup j'avoue avoir du mal à déchiffrer

  11. #11
    Membre éprouvé
    Bonjour,
    Le plus simple serait de joindre directement le .LOO de Looping.
    Patrick Bergougnoux - Professeur des Universités au Département Informatique de l'IUT de Toulouse III
    La simplicité est la sophistication suprême (Léonard de Vinci)
    LIVRE : Modélisation Conceptuelle de Données - Une Démarche Pragmatique
    Looping - Logiciel de modélisation gratuit et libre d'utilisation

  12. #12
    Futur Membre du Club
    merci à vous

    voici ci-joint le fichier .Loo

    le site n'accepte pas directement l'extension .Loo => je l'ai compressé

###raw>template_hook.ano_emploi###