IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
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

Modélisation Discussion :

Demande conseil sur création base de données


Sujet :

Modélisation

  1. #1
    Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Janvier 2013
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 164
    Points : 53
    Points
    53
    Par défaut Demande conseil sur création base de données
    Bonjour,

    j'aimerais avoir votre avis sur la création d'une base. J'ai pour l'instant deux tables : Article et Lot. Avec un article qui peut n'avoir aucun ou plusieurs lots, et un lot qui n'appartient qu'à un article
    Nom : bdd.JPG
Affichages : 478
Taille : 28,0 Ko

    J'ai codé une application de gestionnaire de stock qui s'appuie sur cette bdd, tout est niquel mais un utilisateur m'a fait remarqué à juste titre qu'il faut remplir soit le champ Article.Stock ou Lot.Stock, autant n'avoir qu'un seul champ Stock. Alors bien sûr je pourrais coder un contrôle du genre si l'article à un lot alors je ne fais apparaitre que le champ Lot.Stock et s'il n'en a aucun ce sera le champ Article.Stock qui apparaitra mais je me dis que le plus simple serait d'intervenir sur la bdd directement avec une troisième table Stock mais niveau relation je patauge un peu : un article/lot n'aura qu'un seul stock, et un stock particulier ne sera lié qu'à un seul article/lot. Donc une relation un à un de cette forme :
    Nom : bdd.JPG
Affichages : 471
Taille : 39,1 Ko

    Mais en faisant cela je dois impérativement (et logiquement) renseigné à chaque fois un n° de lot et un n° d'article, donc pour les article n'ayant pas de n° de lot, je suis bloqué. Et en faisant ainsi :
    Nom : bdd.JPG
Affichages : 441
Taille : 37,2 Ko

    même chose, je dois renseigner un n° de lot et un n° d'article.

    Je ne vois pas trop comment m'en sortir et je ne pense pas que ma façon de faire soit la bonne.

  2. #2
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 3 087
    Points : 5 203
    Points
    5 203
    Par défaut
    Bonjour,

    La table des articles ne peut pas "tenir le stock" s'il a des n° de lot. Une solution consiste à ajouter une table des entrées en stock (pk_lot, article, lot, Qin, Qout...) et de déstocker dans cette table.
    - Le champ lot peut être vide si l'article entré n'a pas de lot (informatiquement c'est pk_lot qui compte)
    - Les champs article sont en relation 1 à plusieurs
    - Il est utile pour la traçabilité d'avoir enfin une table des sorties (pk_lot, date, quantité, motif...)
    Utilisez Planet, gestion d'entreprise gratuite pour TPE / PME

  3. #3
    Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Janvier 2013
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 164
    Points : 53
    Points
    53
    Par défaut
    Bonjour Nico84,

    finalement vous suggérez d'avoir 3 tables : table articles, table des entrées en stock et table des sorties ?

  4. #4
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 3 087
    Points : 5 203
    Points
    5 203
    Par défaut
    Oui c'est ça
    Utilisez Planet, gestion d'entreprise gratuite pour TPE / PME

  5. #5
    Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Janvier 2013
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 164
    Points : 53
    Points
    53
    Par défaut
    J'ai remanié ma base selon vos suggestions :
    Nom : bdd.JPG
Affichages : 417
Taille : 33,2 Ko

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Moi je dirais une table Mouvement qui reprend les entrées et les sorties, et une table annexe qui indique le type de mvt (avec une valeur positive ou négative pour les calculs).

    De plus dans ton dernier schéma tes sorties tu les fais de quel emplacement ? Cela signifie que tu sorts tout le stock d'un coup ?

    Il est vrai qu'il y a plusieurs manières de voir les choses.

    Philippe

  7. #7
    Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Janvier 2013
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 164
    Points : 53
    Points
    53
    Par défaut
    Bonjour Philippe,

    non je ne sors pas tout le stock d'un coup, après j'ai codée une appli qui réactualise la quantité restante dans le stock en fonction des quantités sorties. Une table mouvement et une table annexe pour le type de mouvement pourquoi pas, y a-t-il une solution finalement qui me permettrait de conserver mes tables article et lot (ce qui m'arrangerait) ou faut-il tout remanier ?

  8. #8
    Invité
    Invité(e)
    Par défaut
    Re

    Tu peux garder tes tables, par contre je te conseille de faire une recherche sur cette partie du forum (modélisation dans access) avec le mot stock, tu trouveras de nombreux exemples à lire pour te faire une idée des différentes solutions avant d'allier plus loin.

    Philippe

  9. #9
    Community Manager

    Avatar de Malick
    Homme Profil pro
    Community Manager
    Inscrit en
    Juillet 2012
    Messages
    9 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Community Manager
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2012
    Messages : 9 133
    Points : 83 975
    Points
    83 975
    Billets dans le blog
    15
    Par défaut


    En complément de la réponse de Philippe, voici un tutoriel de Claude LELOUP qui pourrait vous être utile :

    Une gestion des stocks avec Access
    Vous avez envie de contribuer au sein du Club Developpez.com ? Contactez-nous maintenant !
    Vous êtes passionné, vous souhaitez partager vos connaissances en informatique, vous souhaitez faire partie de la rédaction.
    Il suffit de vous porter volontaire et de nous faire part de vos envies de contributions :
    Rédaction d'articles/cours/tutoriels, Traduction, Contribution dans la FAQ, Rédaction de news, interviews et témoignages, Organisation de défis, de débats et de sondages, Relecture technique, Modération, Correction orthographique, etc.
    Vous avez d'autres propositions de contributions à nous faire ? Vous souhaitez en savoir davantage ? N'hésitez pas à nous approcher.

  10. #10
    Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Janvier 2013
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 164
    Points : 53
    Points
    53
    Par défaut
    Merci les gars, je regarderai à ça, et je reviendrais vers vous je pense.

  11. #11
    Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Janvier 2013
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 164
    Points : 53
    Points
    53
    Par défaut
    Bonjour à tous,

    j'ai retenu cette solution qui semble bien me convenir :
    Nom : bdd.JPG
Affichages : 456
Taille : 37,0 Ko

  12. #12
    Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Janvier 2013
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 164
    Points : 53
    Points
    53
    Par défaut
    Est ce que cela vous parait cohérent ?

  13. #13
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    981
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 981
    Points : 1 028
    Points
    1 028
    Billets dans le blog
    36
    Par défaut
    Bonjour rocketter


    Voici une ébauche de MCD,

    Nom : stock_mcd.jpg
Affichages : 447
Taille : 68,8 Ko

    C'est une ébauche car je ne connais pas vos processus métiers mais n'y a-t-il pas la notion de:
    1. Commande fournisseur
    2. Bon de livraison,
    3. Destinataires de livraison
    4. Autres notions....


    Traitez vous des retours de marchandises?

    Enfin je prends comme principe que vous ne vendez pas au détail d'où les cardinalités (0,n) (1,1) entre lot et client !

    Le stock sera calculé en dynamique par différence entre lots entrés et sortis Somme(Lot fourni * qté ) - Somme(Lot livré * qté )

    Bonjour chez vous
    Mal nommer un objet, c'est ajouter au malheur de ce monde, car le mensonge est justement la grande misère humaine, c'est pourquoi la grande tâche humaine correspondante sera de ne pas servir le mensonge
    Poésie 44, n° 17 - Albert Camus

    Mes réponses vous ont aidés, un clic sur leur pouce vert
    Bonjour chez vous

  14. #14
    Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Janvier 2013
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 164
    Points : 53
    Points
    53
    Par défaut
    Merci informer de votre MCD, je me suis permis par contre de modifier les cardinalités :
    Nom : mcd.png
Affichages : 356
Taille : 59,0 Ko

    - Un fournisseur fournira aucun ou plusieurs lots et un lot ne sera fourni que par un seul fournisseur
    - Un lot sera stocké dans un ou plusieurs services et un service pourrait n'avoir aucun ou plusieurs lots.
    - Un produit peut ne pas avoir de lot ou sinon plusieurs, et un lot ne portera que sur un et un seul produit
    - Sinon il n'y a pas de notion de client, un article ou un lot d'article est livré à un service.

    J'ai codé une appli vb.net qui calcule le niveau du stock restant sinon, et actualise en conséquence la bdd.

    Il n'y a sinon pas de notions de retour de marchandises. Pour les dates de livraison je le gérais dans mon MCD du post précédent dans ma table stock avec "date de réception", vu que cette table contient les clés étrangères N°Article et n° de lot, je sais donc à quelle date a été livré tel lot ou article.

  15. #15
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    981
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 981
    Points : 1 028
    Points
    1 028
    Billets dans le blog
    36
    Par défaut
    Bonjour rocketter,

    Le formalisme MERISE est un peu bizarre, je te l'avoue. Il y a un sens de lecture qui est celui-ci


    Entité Origine -> relation-> Cardinalité de l'entité origine -> Entité cible

    Ce qui donne pour ton modèle:
    1. le fournisseur fournit 1 et 1 lot
    2. Un lot est fourni par 0 ou n fournisseurs



    si on prend le MCD que tu proposes
    Nom : lot_mcd2.jpg
Affichages : 382
Taille : 69,2 Ko

    Voici le MPD généré

    Nom : lot_mpd2.jpg
Affichages : 356
Taille : 67,3 Ko

    Ce qui est l'inverse de tes RGs
    Mal nommer un objet, c'est ajouter au malheur de ce monde, car le mensonge est justement la grande misère humaine, c'est pourquoi la grande tâche humaine correspondante sera de ne pas servir le mensonge
    Poésie 44, n° 17 - Albert Camus

    Mes réponses vous ont aidés, un clic sur leur pouce vert
    Bonjour chez vous

  16. #16
    Membre du Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Janvier 2013
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 164
    Points : 53
    Points
    53
    Par défaut
    Oui au temps pour moi Informer, merci de m'avoir corrigé.

    Sinon je n'ai pas l'utilité à avoir Fournisseur et Lieu dans des tables à part, je les ai placé dans ma table stock comme indiqué sur mon schéma : http://www.developpez.net/forums/att...nnees/bdd.jpg/

  17. #17
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    981
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 981
    Points : 1 028
    Points
    1 028
    Billets dans le blog
    36
    Par défaut
    Il y'a l'idéal et ce qui répond au besoin, quitte à faire des évolutions plus tard.

    Bonjour chez vous
    Mal nommer un objet, c'est ajouter au malheur de ce monde, car le mensonge est justement la grande misère humaine, c'est pourquoi la grande tâche humaine correspondante sera de ne pas servir le mensonge
    Poésie 44, n° 17 - Albert Camus

    Mes réponses vous ont aidés, un clic sur leur pouce vert
    Bonjour chez vous

Discussions similaires

  1. Aide sur création base de données sur Access (urgent)
    Par cher90 dans le forum Modélisation
    Réponses: 1
    Dernier message: 14/06/2016, 16h12
  2. [WD21] Conseils sur architecture base de données
    Par LeonCosnyd dans le forum WinDev
    Réponses: 20
    Dernier message: 06/05/2016, 14h57
  3. Besoin de conseil sur création base de données
    Par saf28 dans le forum Débuter
    Réponses: 6
    Dernier message: 09/07/2012, 11h47
  4. conseil création Base de données d'un magasin
    Par fessebleu dans le forum Schéma
    Réponses: 2
    Dernier message: 15/11/2007, 22h50
  5. Conseil sur choix base de donnée "individuelle"
    Par Rica dans le forum Décisions SGBD
    Réponses: 5
    Dernier message: 12/05/2005, 13h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo