Mettre à jour le stock après modification (Calcul du PMP)
free_dom
Messages postés3Date d'inscriptionmardi 24 février 2015StatutMembreDernière intervention26 février 2015
-
24 févr. 2015 à 14:08
jordane45
Messages postés37532Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention 5 juin 2023
-
26 févr. 2015 à 17:38
Bonjour,
je suis entrain de développer une application de gestion de stock,
j'ai des bons de réception et des bons de sortie, à chaque mouvement je garde l'historique des différentes opérations dans une table Mouvements qui a un identifiant automatique.
dans cette application on permets la modification des bons (Qte/Prix) pour chaque produit.
mon problème est comment mettre à jour le stock (table stock) en cas de modification d'un bon antérieur (Réception ou sortie), en se basant sur la formule de calcul du PMP après chaque entrée:
PMP= (Qte_Actuel * PMP) + (Qte_Recu * Prix_U) / (Qte_Actuel +Qte_recu)
Quel sont les éléments à prendre en compte pour permettre la mise à jour du stock après une modification dans un bon.
jordane45
Messages postés37532Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention 5 juin 2023341 24 févr. 2015 à 15:01
Bonjour,
Avant toute chose ... que contient ta table stock ?
- quels champs y trouve-t-on ?
- A quoi correspondent ces différents champs ?
Sachant que la Quantité de produit disponible n'a normalement pas à être stocké en dur dans une table.. puisqu'il suffit, via une requête, de faire des SUM .. des Qté Entréés / Sorties .....( Qté actuelle = SUM(Qté entréés) - SUM (Qté sorties) )
sans prendre en compte l'optimisation des tables, la table mouvement et la table stock sont comme suit avec un exemple pour l'article 001:
donc comme j'ai dit précédemment, mon problème est avec la modification d'un mouvement antérieur par exemple dans la ligne 2 de la table mouvement, je dois modifier la quantité reçue, au lieu de 5 je devrais mettre 10.
donc je dois modifier toute les lignes de la table mouvement qui viennent après puis je mets à jour le stock (Qte_Actuel et PMP).
Avez vous une idée comment je dois procéder pour recalculer le PMP dans ce cas.
NB: j'ai essayé de joindre un fichier excel mais ça ne marche pas.
Merci.
jordane45
Messages postés37532Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention 5 juin 2023341 26 févr. 2015 à 13:05
Par contre tu n'as pas lu tout ce que je t'ai marqué....
comme je le supposais... tu sauvegarde en dur .. la qte initiale et la qte actuelle...... alors que ces données.... tu peux les obtenir simplement avec des requêtes de type SUM ......
Il n'y a donc aucune utilité à les stocker en DUR dans ta BDD ...... et ainsi... plus besoin d'essayer des les mettre à jour si tu changes un enregistrement antérieur....
free_dom
Messages postés3Date d'inscriptionmardi 24 février 2015StatutMembreDernière intervention26 février 2015 26 févr. 2015 à 14:37
Merci jordane45,
Effectivement, vous avez raison concernant la sauvegarde en dur de la Qte_Actuelle, mais le PMP est calculé avec la formule:
et cela se fait après chaque entrée, par contre, en cas de sortie le PMP reste le même.
A votre avis qu'est ce que je dois mettre comme données dans la table Stock ?
et cela après chaque entrée.
jordane45
Messages postés37532Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention 5 juin 2023341
>
free_dom
Messages postés3Date d'inscriptionmardi 24 février 2015StatutMembreDernière intervention26 février 2015 26 févr. 2015 à 17:38
Déjà... qu'est-ce que le "PMP" ?
Ensuite... est-ce normal qu'il apparaisse à deux endroits dans la formule ? .. pour le calculer.. il faudrait déjà mettre en forme la formule pour le PMP soit tout seul à gauche du = ..... (et pas présent aussi à droite....)
Enfin.. comme il est possible de retouver par requêtes pour une date donnée :
- La qte_actuelle , le Prix_U, la Qte_recu .... je ne vois pas pourquoi on ne pourrait pas calculer le PMP dynamiquement directement....