salut.
voilà mon message, j'ai fait un logiciel de gestion de stock, j'ai saisi mes bons d'E/S de janvier à septembre, seulement je devais changer le prix d'un bon de reception du mois de janvier et je l'ai fait dernierement d'une facon manuelle, et je veux faire un programme qui recalcule la moyenne pondéré et le prix des bons de sortie venant aprés ce bon modifié du mois de janvier, j'ai fait mon programme mais il y a un problème quelque part, j'aimerai bien que vous m'aidiez à régler mon problème et j'attends votre réponse, merci encore.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79 FiltreStoc:=True; DatModStock.TStock.Filtered:=True; DatModStock.TStock.IndexFieldNames:='Famille;Categorie;CodeArticle'; DatModStock.TStock.Open; FiltreArticleRecept:=True; DatModStock.TArticleReception.Filtered:=True; DatModStock.TArticleReception.MasterSource:=DatModStock.DSStock; DatModStock.TArticleReception.MasterFields:='Famille;Categorie;CodeArticle'; DatModStock.TArticleReception.IndexName:='IndArticleDate'; DatModStock.TArticleReception.Open; FiltreArticleConsom:=True; DatModStock.TArticleConsommation.Filtered:=True; DatModStock.TArticleConsommation.MasterSource:=DatModStock.DSStock; DatModStock.TArticleConsommation.MasterFields:='Famille;Categorie;CodeArticle'; DatModStock.TArticleConsommation.IndexName:='IndArticleDate'; DatModStock.TArticleConsommation.Open; FPrinStock.Gauge1.Progress:=0; FPrinStock.Gauge1.maxvalue:=DatModStock.TStock.RecordCount; DatModStock.TStock.First; while (not DatModStock.TStock.Eof) do begin FPrinStock.Gauge1.Progress:=FPrinStock.Gauge1.Progress+1; Categorie:=DatModStock.TStockCategorie.Value; Famille:=DatModStock.TStockFamille.Value; Code:=DatModStock.TStockCodeArticle.Value; // C:=0; DatModStock.TStock.Edit; DatModStock.TStockQuantiteStock.Value:=DatModStock.TStockQteInventaire.Value; DatModStock.TStockPrixUnit.Value:=DatModStock.TStockPrixInvent.Value; // C:=1; DatModStock.TArticleReception.First; While (not DatModStock.TArticleReception.Eof) do begin DatModStock.TArticleConsommation.First; While (not DatModStock.TArticleConsommation.Eof) do begin if (DatModStock.TArticleReceptionDate.Value)<(DatModStock.TArticleConsommationDate.Value) then begin DatModStock.TStock.Edit; DatModStock.TStockPrixUnit.Value:=((DatModStock.TStockPrixUnit.Value*DatModStock.TStockQuantiteStock.Value)+(DatModStock.TArticleReceptionPrixUnitaire.Value*DatModStock.TArticleReceptionQuantitelivre.Value))/(DatModStock.TStockQuantiteStock.Value+DatModStock.TArticleReceptionQuantitelivre.Value); DatModStock.TStockQuantiteStock.Value:=DatModStock.TStockQuantiteStock.Value+DatModStock.TArticleReceptionQuantitelivre.Value; DatModStock.TStock.Post; DatModStock.TArticleReception.Edit; DatModStock.TArticleReceptionMoyennePondere.Value:=DatModStock.TStockPrixUnit.Value; DatModStock.TArticleReception.Post; end; if (DatModStock.TArticleConsommationDate.Value)<(DatModStock.TArticleReceptionDate.Value) then begin DatModStock.TStock.Edit; DatModStock.TStockQuantiteStock.Value:=DatModStock.TStockQuantiteStock.Value-DatModStock.TArticleConsommationQuantiteSortie.Value; DatModStock.TStock.Post; DatModStock.TArticleConsommation.Edit; DatModStock.TArticleConsommationPrixUnitaire.Value:=DatModStock.TStockPrixUnit.Value; DatModStock.TArticleConsommation.Post; end; DatModStock.TArticleConsommation.Next; end; DatModStock.TArticleReception.Next; end; DatModStock.TStock.Next; FPrinStock.Gauge1.visible:=False; end; FiltreArticleRecept:=False; DatModStock.TArticleReception.Filtered:=False; DatModStock.TArticleReception.Close; DatModStock.TArticleReception.MasterSource:=Nil; DatModStock.TArticleReception.MasterFields:=''; DatModStock.TArticleReception.IndexFieldNames:='NumBonReception;Famille;Categorie;CodeArticle'; FiltreArticleConsom:=False; DatModStock.TArticleConsommation.Filtered:=False; DatModStock.TArticleConsommation.Close; DatModStock.TArticleConsommation.MasterSource:=Nil; DatModStock.TArticleConsommation.MasterFields:=''; DatModStock.TArticleConsommation.IndexFieldNames:='NumBonConsommation;Famille;Categorie;CodeArticle'; FiltreStoc:=False; DatModStock.TStock.Filtered:=False; DatModStock.TStock.Close; DatModStock.TStock.IndexFieldNames:='Famille;Categorie;CodeArticle';
Partager