|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Omar Inscription : septembre 2010 Messages : 5 ![]() |
Bonjour à tous je viens par la présente demandé votre aide
je suis sur une petite application de gestion de stocks en access 2003 dans laquelle un formulaire me pose d'énorme problèmes. Dans mon application j'ai deux formulaires (sortie de matériels et entrée de matériels) basés sur des tables sortie et entrées (qui comprennent entre autres champs Qte_Sortie et Qte_Entree) et deux tables détails liées aux tables sortie et entrée. Au niveau entrée de matériels pas de problème. Mon problème est au niveau de mon formulaire sortie de matériel. Si j'effectue une première sortie de matériel pas de problème mais si j'effectue d'autres sorties l'application fait un cumul de quantité de matériel de la première sortie et la quantité de matériel de la sortir suivante. J"ai l"impression que le formulaire sortie garde en mémoire la quantité de matériel sortie et si je fais une autre sortie il cumule les deux sorties et soustrait ce cumule au stock de matériel alors qu'il avait déjà soustrait la première sortie. je ne sais pas s'il faut réinitialiser le champ Qte_Sortie avant d'effectuer d'autres sorties si oui comment faire SVP aidez moi |
|
|
00
|
|
|
#2 |
![]() ![]() René MAROTInscription : octobre 2005 Messages : 5 462 ![]() |
Pourrais-tu mettre la description de tes tables et un exemple de que tu attends ?
A+
__________________
Vous voulez une réponse rapide et efficace à vos questions téchniques ? Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs. |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Omar Inscription : septembre 2010 Messages : 5 ![]() |
Merci
INVENTAIRE(NUM_INVENT, DAT_INVENT ) MATERIEL( NUM_MAT, LIB_MAT) ENTITE( CODE_ENTITE,LIB_ENTITE) SITE(CODE_SITE, LIB_SITE) SERVICE( CODE_SERVICE , LIB_SERVICE) ENTREE( NUM_ENTREE, CODE_TYPELIV , DAT_ENTREE ) CONTAINER( NUM_CONTAINER, CODE_ENTITE,CODE_SITE , CARGO_TYPE) DEMANDE( NUM_DEMANDE, CODE_SERVICE, DAT_DEMANDE ) SORTIE(CODE_SORTIEl, CODE_SERVICE, DATE_SORTIE ) TYPE_MATERIEL( CODE_TYPEMAT, NUM_MAT, LIB_TYPMAT) INVENTORIER( NUM_MAT, NUM_INVENT , QTE_INVENT ) CONCERNER(NUM_MAT ,NUM_DEMANDE, QTE_DEMANDE ) APPARTENIR_A( NUM_MAT, NUM_ENTREE) CONCERNER2(NUM_CONTAINER, CODE_SORTIE, NUM_MAT, QTE_SORTIE) CONTENIR(NUM_ENTREE, NUM_CONTAINER, QUANTITE_ENTREE) La table Matériel est un répertoire de matériel Le matériel est contenu dans plusieurs containers qui sont sur deux sites Les containers appartiennent à des entités La sortie du matériel se fait sur demande A l’entrée du matériel on doit préciser le container dans lequel il est stocké de même qu’à la sortie La quantité entrée constitue en fait le stock et à chaque sortie, la quantité entrée dimunie . quand je fais une première sortie pas de problèm à la deuxième sortie il fait un cumul c'est-à-dire qu’il cumule la 1e et la 2e sortie et soustrait ce cumul là de la quantité entrée alors qu’il avait déjà soustrait la 1e sortie Exemple Quantité entrée 40 1e sortie = 10 Quantité entrée = 30 (Qté entrée – qté sortie) pas de problem 2e sortir =5 Quantité entrée = 15 au lieu de 25 (Qté entrée – (1e sortir +2e sortie)) tel est mon probleme La soustraction se fait à partir d’une requête de mise à jour liée à une macro Merci de votre compréhension et de votre patience |
|
|
00
|
|
|
#4 |
![]() ![]() René MAROTInscription : octobre 2005 Messages : 5 462 ![]() |
Dans tes tables ENTREE et SORTIE tu ne conserves pas la quantité entrée ou sortie ?
Tu fais ton calcul de stock à chaque saisie ? Généralement on stock les mouvements et on calcule le solde en faisant : Stock courant = Stock initial + (somme de toutes les entrées) - (somme de toutes les sorties). C'est habituellement beaucoup plus simple que de calculer le stock par programme à chaque mouvement surtout si tu as plusieurs personnes qui font la saisie des mouvements de stock. Pour simpflifier l'architecture, tu peux utiliser une seule table 'MouvementDeStock' et un type 'Entree' ou 'Sortie'. Cela facilite généralement les requêtes sur les mouvements. Tu peux même avoir un type 'StockInitial' qui t'évite d'avoir à gérer une table pour cela. A+
__________________
Vous voulez une réponse rapide et efficace à vos questions téchniques ? Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs. |
|
|
20
|
|
|
#5 |
|
Invité de passage
![]() Omar Inscription : septembre 2010 Messages : 5 ![]() |
Salut
Effectivement le calcul de stock se fait à chaque saisie ce qui n 'est commode. J'ai compris un peu votre idée et je me rend compte que le modèle conceptuel de données ne répond pas trop. Je vais reprendre mon mcd en tenant compte de vos conseils. Merci et à bientôt |
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Omar Inscription : septembre 2010 Messages : 5 ![]() |
Merci une fois de plus mr marot avec vos conseils mon travail marche bien pour le moment et je vous en suis reconnaissant
merci et à bientôt |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com