Index: MRPSTOCK.mac.rou =================================================================== diff -u -r734 -r1452 --- MRPSTOCK.mac.rou (.../MRPSTOCK.mac.rou) (revision 734) +++ MRPSTOCK.mac.rou (.../MRPSTOCK.mac.rou) (revision 1452) @@ -1,4 +1,5 @@ MRPSTOCK ; Stock en reservatie van de werkvloer [ 11/08/2003 8:40 PM ] +#include %Prod.Product Quit STAT Set %J=$$%J^vhRtn1() @@ -42,39 +43,46 @@ ; Opbouw sorteerglobal Set PRNr="" For Set PRNr=$O(^PRSTOCK("D",PRNr)) Quit:PRNr="" Do - .Quit:$P(^PRSTOCK("D",PRNr),D,5)="" - .Quit:'$D(^KPR(PRNr)) - .Quit:$P(^KPR(PRNr,0),D,1)["*KP*" ; Geen kindproducten - .Set ^HULP(%J,$$SORTKEY^PRODUKT(PRNr))=PRNr + . Quit:$P(^PRSTOCK("D",PRNr),D,5)="" + . Quit:'$D(^KPR(PRNr)) + . Quit:$P(^KPR(PRNr,0),D,1)["*KP*" ; Geen kindproducten + . Set BasisType=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("TB",PRNr,"BasisType")) + . If BasisType="" Do + . . Set BasisType=$LG(##class(Prod.Kenmerk.DataDefinitie).Get("KAD",PRNr,"BasisType")) + . . Set:BasisType'="" BasisType=BasisType="KAD:"_BasisType + . Set ^HULP(%J,$S(BasisType="":"*",1:BasisType),$$SORTKEY^PRODUKT(PRNr))=PRNr ; Export van sorteerglobal Set Dev=0 - Set Dev=$$OPEN^vhDEV(,"WVStock.txt","W") + Set Dev=$$OPEN^vhDEV(,"WVStock.txt","W","T") Use Dev Write $TR("Plaats;PRNr;Korttekst;WV Stock;HBPunt;HBQty;CiffPPL;BeginMnd",";",$C(9)),! - Set Key="" - For Set Key=$O(^HULP(%J,Key)) Quit:Key="" Do - .Set PRNr=^HULP(%J,Key) - .Set Rec0=^KPR(PRNr,0) - .Set KeyI=$O(^KPR(PRNr,"J")) - .Set CiffPPL=$P(^KPR(PRNr,KeyI),D,23) - .Set Rec15=$G(^KPR(PRNr,15)) - .Set RecST=^PRSTOCK("D",PRNr) - .Set BeginFS=$P(RecST,D,5) - .If BeginM Do - .. Set VolgNr="",Found=0 - .. For Set VolgNr=$O(^PRHIST(PRNr,VolgNr),-1) Quit:VolgNr="" Do Quit:Found - ...Quit:$P(^PRHIST(PRNr,VolgNr),D,5)'="W" - ...If +$P(^PRHIST(PRNr,VolgNr),D,1)Stock:$S(BestQty>HerbQty:BestQty,1:HerbQty),1:BestQty) ; Indien herbestelpunt bereikt dan kijken wat groter is verschil reservatie of herbestelqty ; Indien onvoldoende praktische voorraad dan juist het nodige - Set:$$GETSTOCK^PRODUKT4(PRNr,"P")0 Set @CRef@("TO",PRNr)=BestQty Quit