Index: BL/Legacy/EWORDS6.cls.xml
===================================================================
diff -u -r49998 -r54519
--- BL/Legacy/EWORDS6.cls.xml (.../EWORDS6.cls.xml) (revision 49998)
+++ BL/Legacy/EWORDS6.cls.xml (.../EWORDS6.cls.xml) (revision 54519)
@@ -11,14 +11,14 @@
1 -> vandaag
2 -> morgen (volgende arbeidsdag)]]>
1
-ORDNr:%String
+ORDNr:%String,OLNr:%String
%Integer
1
-ORDNr:%String
+ORDNr:%String,OLNr:%String
0
%Date
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)
Index: FLOWORD5.mac.rou
===================================================================
diff -u -r43045 -r54519
--- FLOWORD5.mac.rou (.../FLOWORD5.mac.rou) (revision 43045)
+++ FLOWORD5.mac.rou (.../FLOWORD5.mac.rou) (revision 54519)
@@ -257,12 +257,13 @@
Quit
;
; Verzamel alle leverdagen van een order
-GetLeverDagen(KLNr,ORDNr)
+GetLeverDagen(KLNr,ORDNr,GevraagdOLNr)
New R,LeverDag,LeverDagen,OLNr,PRNr
Set OLNr=100
For Set OLNr=$O(^KOD(KLNr,"F",ORDNr,OLNr)) Quit:OLNr="" Do
. Set R=^KOD(KLNr,"F",ORDNr,OLNr),PRNr=$P(R,D,2)
. Quit:'PRNr
+ . Quit:($G(GevraagdOLNr)'="")&&(OLNr'=GevraagdOLNr)
. Set LeverDag=$P(R,D,25) Set:LeverDag LeverDagen(LeverDag)=""
Set (LeverDagen,LeverDag)=""
For Set LeverDag=$O(LeverDagen(LeverDag)) Quit:LeverDag="" Set LeverDagen=LeverDagen_$LB(LeverDag)