Je demande vos avis concernant mon problème. Je suis sur un projet de gestion commerciale que je mène sous laravel.
Je dispose certains articles qui doivent être contrôlé après la réception, ils ne rentrent que si le résultat du contrôle est valide. Si le contrôle est invalide, les articles sont partis en quarantaine. Et si le fournisseur change les mauvais articles, on doit pouvoir les réintégrés a partir de la quarantaine.
Règles de gestion :
Chaque articles appartient a un seul fournisseur, et a un seul magasin de stockage.
Chaque réception peut avoir une ou plusieurs lignes (détails réception).
Chaque réception peut avoir zéro ou plusieurs contrôles. Contrôle a son tour a les lignes de contrôle qui est plus ou moins les lignes de la réception contrôlée.
Chaque ligne ou détails de réception concerne : un article et un magasin.
Chaque ligne de réception peut avoir un ou plusieurs détails ou ligne de contrôle.
Problème :
Quelle est votre idée concernant la mise en place d’une quarantaine qui recense tout les articles réceptionnés et qui ont un statut de contrôle invalide ?
Quelle est la possibilité de réinjecter dans le stock afin de disparaitre de la quarantaine ?
Actuellement, je calcul le stock des articles avec une requête (je sélectionne toutes les réceptions qui ont un statut valide)
Je ne suis pas sûr que faire une autre table soit une bonne idée, le statut me semble suffisant. Tu peux toujours faire un DELETE sur les articles en quarantaine s'ils ne sont pas validés.
Je ne suis pas sûr que faire une autre table soit une bonne idée, le statut me semble suffisant. Tu peux toujours faire un DELETE sur les articles en quarantaine s'ils ne sont pas validés.
La suppression des articles en quarantaine ne me pose pas de souci.
Par contre est ce que est ce que ma méthode de calcul du stock est bonne ? car table stock n'existe pas et si elle est bonne, comment libéré les articles de la quarantaine afin d'être considérer dans le stock.
Je te rappel aussi que de mon point de vu, quarataine n'est pas une table physique donc impossible de faire un DELETE. tu peux savoir la quarantaine en faisant une requête de sélection des articles réceptionnés invalide.
Selon moi, l'entité Détail n'en est pas une, tout au plus c'est une relation n,n avec des liens relatifs (que tu transformes ensuite en entité).
Par ailleurs, l'entité contrôle (et de fait ses lignes) est également mal vue ...
Au passage, tu as mis beaucoup de relation redondante (magasin/réception, contrôle/article, contrôle/réception).
Je ferais le MCD ainsi :
De la sorte, une réception contient plusieurs articles par l'entité relative detail_reception. Un contrôle est lié à un détail et dispose d'un statut (booléen ou autre, comme tu veux).
Tant qu'un detail_reception n'est pas lié à un controle avec un statut adéquat (1 ou "OK" ou autre) tu ne comptabilises pas l'article en stock ...
Le MLD associé est :
Pour calculer les entrées en stock d'un article :
SELECT
A.id_article,
SUM( AR.quantite ) AS entrees
FROM
controle C
INNER JOIN detail_reception DR
ON C.id_reception = DR.id_reception
AND C.id_article = DR.id_article
INNER JOIN article A
ON DR.id_article = A.id_article
WHERE C.statut = 1
GROUP BY A.id_article
Je te remercie pour tes idées que je trouve super même.
Mais j’ai une liaison entre magasin et details_reception car c’est au moment de la réception que tu décides le vrai magasin (magasin de la table article est le magasin par défaut).
Donc si je comprends avec ton model chaque ligne de la réception contrôlable aura un contrôle avec une référence unique ?
Autre chose il faut savoir que la totalité de la quantité reçue peut avoir plusieurs statut. si on réceptionne 100 de l'article A, il peut avoir que 50 sont valide et 50 invalide. du coup la cardinalité entre controle et detail_reception risque d'être [detail_reception 0,n--concerne --1,1 controle].
J’ai aussi compris que je ne comptabilise dans le stock que si le statut du contrôle est vrai (true) mais les contrôle invalide qui son considéré comme réceptions en quarantaine, comment les faire libérer ? ou dire même que c’est définitivement retourner chez le fournisseur ?
C’est la dernière phrase qui est mon vrai problème.
j’ai une liaison entre magasin et details_reception car c’est au moment de la réception que tu décides le vrai magasin
Ok.
MrFOF a écrit:
chaque ligne de la réception contrôlable aura un contrôle avec une référence unique
Oui.
MrFOF a écrit:
les contrôle invalide qui son considéré comme réceptions en quarantaine, comment les faire libérer ? ou dire même que c’est définitivement retourner chez le fournisseur ?
Avec, comme le proposait Philodick dès le départ, des statuts différents ... 0,1,2,3, etc.
J'ai maintenant une idée sur comment je vais le faire.
Merci
Contrôle qualité des articles reçus avant entrée e
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
N'oubliez pas d'activer les erreurs PDO.
Face a quelqu'un pour qui l'on n'éprouve que de l'aversion et du mépris, les yeux d'un homme deviennent extrêmement froids et cruels.