Index: EWORDS6.mac.rou =================================================================== diff -u -r51616 -r54519 --- EWORDS6.mac.rou (.../EWORDS6.mac.rou) (revision 51616) +++ EWORDS6.mac.rou (.../EWORDS6.mac.rou) (revision 54519) @@ -52,8 +52,12 @@ While (OrderLijnIterator.HasNext()) { #dim OrderLijn As DOM.VKP.ProductOrderlijn = OrderLijnIterator.Next() - If (OrderLijn.%IsA("DOM.VKP.impl.DataM.DataMProductOrderlijn") && $$$Not(OrderLijn.GeefProductID() = "")) { - Do PickingOpdrachtInfoLijst.Insert(##class(BL.Legacy.EWORDS.PickingOpdrachtInfo).%New(OrderLijn.GeefAantal(), OrderLijn.GeefLeverdag(), OrderLijn.GeefOrderID(), OrderLijn.GeefID())) + If (OrderLijn.%IsA("DOM.VKP.impl.DataM.DataMProductOrderlijn") && $$$Not(OrderLijn.GeefProductID() = "")) + { + If ##class(BL.Legacy.EWORDS6).PickingVoorVandaagVolgendeArbeidsdagOfAndereDag(OrderLijn.GeefOrderID(),OrderLijn.GeefLijnVolgNr()) + { + Do PickingOpdrachtInfoLijst.Insert(##class(BL.Legacy.EWORDS.PickingOpdrachtInfo).%New(OrderLijn.GeefAantal(), OrderLijn.GeefLeverdag(), OrderLijn.GeefOrderID(), OrderLijn.GeefID())) + } } } } @@ -128,27 +132,29 @@ Quit LeverDagOk ; Bepaal de leverdagen van een groep gelinkte orders -GetLeverDagen(ORDNr) - New I,R,KLNr,ORDNrs,lbLeverDagen,LeverDagen,LeverDag +GetLeverDagen(ORDNr,GevraagdOLNr) + New I,R,KLNr,ORDNrs,lbLeverDagen,LeverDagen,LeverDag,GevraagdORDNr + Set GevraagdORDNr=ORDNr Set R=^KO1(ORDNr,"F"),KLNr=$P(R,"\") Set ORDNrs=$$GetOrderLink(ORDNr) ; Ophalen gelinkte orders For I=1:1:$L(ORDNrs,";") Set ORDNr=$P(ORDNrs,";",I) Set:ORDNr ORDNrs(ORDNr)="" Set ORDNr="" For { Set ORDNr=$O(ORDNrs(ORDNr)) Quit:ORDNr="" - Set lbLeverDagen=$$GetLeverDagen^FLOWORD5(KLNr,ORDNr) + Quit:($G(GevraagdOLNr)'="")&&(GevraagdORDNr'=ORDNr) + Set lbLeverDagen=$$GetLeverDagen^FLOWORD5(KLNr,ORDNr,$G(GevraagdOLNr)) For I=1:1:$LL(lbLeverDagen) Set LeverDag=$LI(lbLeverDagen,I),LeverDagen(LeverDag)="" } Set (lbLeverDagen,LeverDag)="" For Set LeverDag=$O(LeverDagen(LeverDag)) Quit:LeverDag="" Set lbLeverDagen=lbLeverDagen_$LB(LeverDag) Quit lbLeverDagen ; Geeft de DUEOUT picking. Als die gisteren of ouder is, wordt de eerste zinvolle teruggegeven. -GetPickDatum(ORDNr) +GetPickDatum(ORDNr,GevraagdOLNr) New R,KLNr,blVerzendWijze,blLeveringsTermijn,LeverDag Set PickDatum="" - Set LeverDag=$LG($$GetLeverDagen(ORDNr)) // = De vroegste leverdag van alle lijnen van het order en zijn gekoppelde orders. + Set LeverDag=$LG($$GetLeverDagen(ORDNr,$G(GevraagdOLNr))) // = De vroegste leverdag van alle lijnen van het order en zijn gekoppelde orders. if $length(LeverDag) { Set R=^KO1(ORDNr,"F"),KLNr=$P(R,"\",1) Do INITDOMVKP^FLOWORD2(KLNr,ORDNr)