Index: EWORDSW.mac.rou =================================================================== diff -u -r38189 -r38191 --- EWORDSW.mac.rou (.../EWORDSW.mac.rou) (revision 38189) +++ EWORDSW.mac.rou (.../EWORDSW.mac.rou) (revision 38191) @@ -118,20 +118,30 @@ Quit ##class(BL.Legacy.EWORDSW).Bevat(CONSNr) AanpassenDueOut(CONSNr,lbBevat) - New Omz,OmzFakt,KLNr,DOut + New Omz,OmzFakt,KLNr,DOut,SubMagazijnen,Verzendwijze ;Aanpassen van de DueOutTime volgens magazijn Set KLNr=$P(^ORDW("D",CONSNr),D) Set Omz=$P($G(^KKAAP(KLNr,0,0,0,0)),D) Set OmzFakt=$S(Omz>250000:100,Omz>25000:100,1:0) Set DOut=$P(^ORDW("D",CONSNr),D,3) + Set SubMagazijnen=$$BepaalSubMagazijnen(CONSNr) + Set Verzendwijze=$P(^ORDW("D",CONSNr),D,2) + If ($E(Verzendwijze,1,2)="OD") && (SubMagazijnen["E") + { + If $P($P(Verzendwijze,"`"),";")="OD1" Set $P(DOut,",",2)=21600 ; 6 uur + If $P($P(Verzendwijze,"`"),";")="OD2" Set $P(DOut,",",2)=25200 ; 7 uur + If $P($P(Verzendwijze,"`"),";")="OD3" Set $P(DOut,",",2)=28800 ; 8 uur + If $P($P(Verzendwijze,"`"),";")="OD4" Set $P(DOut,",",2)=32400 ; 9 uur + If $P($P(Verzendwijze,"`"),";")="OD5" Set $P(DOut,",",2)=36000 ; 10 uur + } Set:OmzFakt>1 $P(DOut,",",2)=$P(DOut,",",2)-(4*60) ; Grote klanten worden voorgetrokken met 4 min. Set:$LF(lbBevat,"ORGALUX") $P(DOut,",",2)=$P(DOut,",",2)-(10*60) ; Orgalux orders voortrekken met 10 min. - Set:$$AantalSubMagazijnen(CONSNr)=1 $P(DOut,",",2)=$P(DOut,",",2)-(5*60) ; picking uit slechts 1 submagazijn wordt voorgetrokken met 5 min + Set:$L(SubMagazijnen)=1 $P(DOut,",",2)=$P(DOut,",",2)-(5*60) ; picking uit slechts 1 submagazijn wordt voorgetrokken met 5 min Set $P(^ORDW("D",CONSNr),D,3)=DOut ; sinds uglypicking actief is niet meer nodig Set:$P(DOut,",",2)<0 $P(^ORDW("D",CONSNr),D,3)=$P(DOut,",") ; PV 15-04-2011 - blijkbaar wordt soms de DueOut verlaagd met x min als deze dan op nul staat dan mag deze niet negatief gaan Quit -AantalSubMagazijnen(CONSNr) +BepaalSubMagazijnen(CONSNr) New ORDNr,OLUNr,SOLNr,Magazijnen,SOLRec,SoftV Set (ORDNr,OLUNr,SOLNr,Magazijnen)="" For Set ORDNr=$O(^ORDW("D",CONSNr,"D",ORDNr)) Quit:ORDNr="" Do @@ -140,8 +150,8 @@ . . . Set SOLRec=^ORDW("D",CONSNr,"D",ORDNr,OLUNr,SOLNr) . . . Set SoftV=$P(SOLRec,"\",13) . . . Set:Magazijnen'[SoftV Magazijnen=Magazijnen_SoftV - Quit $L(Magazijnen) - + Quit Magazijnen + SORTHALUX(CONSNr,lbBevat,Sort) New SortT1,SortT2,ORDNr,OLUNr,Gewicht,Aantal,OLRec,OLNr,PRNr,HG,SortKey,SortCnt,Omz,OmzFakt,DOut,DefMag,Mag,GroepSleutel,GroepVolume,FlowCntrlCnt,FlowCntrl Set KLNr=$P(^ORDW("D",CONSNr),D)