KF5 G 1 ;MODULE UITLEVEREN ORDERS (TRANSFERT) ;Quit naar KF4 [ 09/29/2003 1:48 PM ] ; S0 S PPAR=$$MUNT^vhRtn1(PM,,12),UN=0,UZ=100 S0A S UZ=$O(@("^"_Q_"UL(KC,US,URR,UZ)")) G S0C:'UZ S U2=^(UZ) G S0A:'$L($P(U2,D,2)) S UMC=$P(U2,D,22) S0B S UPAR=$$MUNT^vhRtn1(UMC,,12),UN=UN+($P(U2,D,9)*UPAR/PPAR) G S0A S0C I UN<0 S UN=$E(UN,2,99) S0Z Q ; S1 S R=@("^"_Q_"PR(PR,0)") S X(2)=$P(X(2),D,1,8)_D_PRE_D_$P(X(2),D,10,99) I UA'<0 S R=UUD_2_D_$S(VWTYP["S":0,VWTYP["Z":0,1:UA)_D_D_1_D_$J($S(VWTYP["S":0,VWTYP["Z":0,1:UH),0,$S(IsEuro:4,1:2))_"\0\0\"_URR D ^KPR10 S UGW=UGW+($P(@("^"_Q_"PR(PR,1)"),D,13)/1000*UA) L (@("^"_Q_"OD(KC,US)"),@("^"_Q_"UL(KC,US,URR)")) S R=PR_D_UUD_D_UA_D_$J(UH,1,2)_D_($P($P(U2,D,28),";")="KOM") D ^Stat.Product.UpdateWeekStatistiek S R=@("^"_Q_"PR(PR,0)") Q ; S2 I $D(ULT),ULT?5N N TU2 S TU2=U2 N U2 S U2=TU2,$P(U2,D,25)=ULT K ULT S @("^"_Q_"OD(KC,US,UR,UZ)")=U2 D SWNODE^FLOWORD(KC,UR,UZ) S2Z Q ; S3 S $P(U2,D,15)="",UUZ=@("^"_Q_"UL(KC,US,URR,0)"),^(0)=UUZ+1,^(UUZ)=U2 D BUILDBON^FLOWBON3(KC,URR,UUZ),BUILDKUP^FLOWBON3(KC,URR,UUZ) S3Z Q ; S4 S UBE=$J(UEP*UA,1,2),U2=$P(U2,D,1,2)_D_UA_D_$P(U2,D,4,8)_D_UN_D_UN_D_$P(U2,D,11,15)_D_UBE_D_UM_D_$P(U2,D,18,22)_D_UAA_D_$P(U2,D,24,99) S4Z Q ; S5 S FP=1503 W @F,@F1 S FP=2424+$L(UOU)+$L(UR)+$L(URR)+F60 W @F,@F5 S FP=2403+F60 W @F,@F4,UOU," ",UR," NAAR UITLEVERING ",URR," ",@F5 S5Z Q ; S6 S UEP=$P(U2,D,6),UA=0,UN=$J(0,0,2),UM="KF6",UAA=$P(U2,D,3) D S4,S3 S6Z Q ; S7 N R,BonDat,BLUNr,OrdDat Set R=^KUL(KC,"F",URR,1),BonDat=$$INTDATE^vhLib.DataTypes($P(R,D,2)) S R=^KUL(KC,US,URR,UUZ),BLUNr=$P(R,D,15) S OrdDat=$P($$ORDGEG^FLOWBON(KC,URR,UUZ),D,2) S:$L(OrdDat) OrdDat=$$INTDATE^vhLib.DataTypes(OrdDat) D PUT^PRHIST(PR,$S(VWTYP["S":0,VWTYP["Z":0,1:-UA),$S(UA<0:"R",1:"U"),$S(VWTYP["S":"Z",VWTYP["Z":"Z",1:"M"),KC,URR,BLUNr,BonDat,,,,,,OrdDat) Q ; 1 N IsEuro S IsEuro=$$ISEURO^vhRtn1() S UPAR=$$MUNT^vhRtn1(UVM,,12),ULV="01" 2 S UPL="V",UR=$N(UTO(UR)) K ^HULP($J),ULT G 37:UR=-1 20 S UZ=100 I UVL="P" S R="UPL\22\3\UITLEVEREN ORDER "_UR_"\C2\1\\""VL""[K&$L(K)" D R0^KF5A 3 D S5 S X=@("^"_Q_"OD(KC,US,UR,1)"),VWTYP=$P(X,D,29) S UOD=$TR($$EXTDATE^vhLib.DataTypes($$INTDATE^vhLib.DataTypes($P(X,D,2)),"DS"),D,"") S UOR=$P("R\O",D,$P(X,D,17)+1) 30 S LVW=$P(X,D,21) I '$D(@("^"_Q_"BA(153,LVW_"" "",""P"",0)")) S:ULV="" ULV=LVW G 4 32 S LPT=^(0) I (LPT>UPT&(UPT'=""))!(LPT="") S UPT=LPT,ULV=LVW 4 S U2=$E(BS,1,3)_$P(X,D,8)_D_$E(" ",1,6-$L(UR))_UR_" - "_$P(X,D,2)_" - "_$P(X,D,3)_$E(BS,1,12)_"KF5"_$E(BS,1,9) S $P(U2,D,14)=VWTYP,$P(U2,D,19)=$P(X,D,24),$P(U2,D,20)=$P(X,D,19),$P(U2,D,21)=$P(X,D,40),$P(U2,D,22)=$P(X,D,9),$P(U2,"\",27)=$P(X,"\",57) D S3 5 S UZ=$N(@("^"_Q_"OD(KC,US,UR,UZ)")) G 9:UZ'=-1,7:$N(^(100))=-1 6 S UZ=$N(^HULP($J,UZ)) I UZ'=-1 S U2=^(UZ),@("^"_Q_"OD(KC,US,UR,UZ)")=U2 G 6 I $D(@("^"_Q_"OD(0,US,3)")) S URLC=UR D @^(3) D RecalcCommKort^FLOWMANL("KOD",KC,UR) G 2 7 D:$P($P(@("^"_Q_"OD(KC,US,UR,1)"),D,12),";") .S:'$D(@("^"_Q_"U1(URR,US)")) @("^"_Q_"U1(URR,US)")=KC_D .D ##class(BL.Flow.Cons.TransportData).Change2Bon(UR,URR) D KillOrderLink^KFO(UR) K @("^"_Q_"O2(US,KC,UR)"),@("^"_Q_"OB(UR,US)"),@("^"_Q_"OD(KC,US,UR)") Do ##class(DOM.VKP.event.OrderEventRaiser).RaiseOrderVerwijderdEvent(UR) 8 S U2=@("^"_Q_"O1(UR,US)"),@("^"_Q_"O1(UR,US)")=$P(U2,D,1)_D_URR_D_$P(U2,D,3,99),^(US,URR)="" I $D(@("^"_Q_"OD(0,US,4)")) S URLC=UR D @^(4) G 2 9 S U2=@("^"_Q_"OD(KC,US,UR,UZ)"),PR=$P(U2,D,2),OLUNr=$P(U2,D,15),UA=$P(U2,D,3) I PR,OLUNr,$D(^ORDW("IO",UR,OLUNr)) G 5 D KWNODE^FLOWORD(KC,UR,UZ) Do:PR .Do:UA>0 ProductLijnOpBon^EWORDS2(UR,OLUNr,URR) .Do:UA<0 TerugnameLijnOpBon^EWORDS2(UR,OLUNr,URR) S U2=@("^"_Q_"OD(KC,US,UR,UZ)") K ^(UZ) S PR=$P(U2,D,2),UA=$P(U2,D,3),UH=$P(U2,D,10)*UPAR,VWTYP=$P(U2,D,14),TR=$P(U2,D,27),TZ=$P($P(U2,D,28),";") I '$L(PR) D G 5 .D S3 .S:$P($P(U2,D,17),"#",1)="KF11" ^HULP($J,UZ)=U2 .I $P($P(U2,D,17),"#",1)="KF1925",$P($P(U2,D,17),"#",2)="CK",$P($P(U2,D,17),"#",3) S ^HULP($J,UZ)=U2 10 S U2=$P(U2,D,1,22)_D_D_$P(U2,D,24,99) S:'$P(U2,D,24) UPT="" G 11:'TR,11:'$D(@("^"_Q_"TO1(TR)")) S LC=$P(^(TR),D,1) G 11:'$D(@("^"_Q_"TO(LC,TR,TZ)")) 100 S X(0)=@("^"_Q_"PR(PR,0)"),PC=$P(X(0),D,1),PN=$P(X(0),D,2),FP=1501 W @F,@F1,$C(13),?2,"ORDER : ",UR,!?2,"LIJN : ",UZ-100 102 W !?2,"PRODUKT : ",PC,?39,PN,!!?2,"KOMORDER",!!?2,"TOELEV. : ",TR,!?2,"LIJN : ",TZ-100 D M3,S5,S2,S6 G 5 11 L (@("^"_Q_"OD(KC,US)"),@("^"_Q_"UL(KC,US,URR)"),@("^"_Q_"PR(PR)")):2 E D M2 G 11 12 S X(0)=@("^"_Q_"PR(PR,0)"),PC=$P(X(0),D,1),PN=$P(X(0),D,2),X(2)=^(2),PST=$P(X(0),D,14),PRE=$P(X(2),D,9),PV=$P(^($N(^("J"))),D,25) 120 G 13:UPL="V" S R="K\22\3\AANTAL UITLEVEREN\C3\6\\""N""[K&$L(K)!(K=""V""&(UA'>PST))!(K?.N&(K>0)&(K'>UA)&(K'>PST))\" D R0^KF5A I K="N" D S5,S2,S6 G 5 122 I K=UA!(K="V") D S5 G 13 S PST=K,ULT=$$ULT(U2,K) I ULT="-" K ULT G 12 D S5 G 18 13 I UA>PST,UA>0,VWTYP'["S",VWTYP'["Z" G 15 S PRE=($P(PRE,"#",1)-UA)_"#"_($P(PRE,"#",2)-UA)_"#"_$P(PRE,"#",3) D S1 S U2=$P(U2,D,1,16)_D_"KF6"_D_$P(U2,D,18,99) D S3,S7 G 5 15 S R="K\22\3\VOORRAAD ONVOLDOENDE, AANTAL UITLEVEREN\C1\6\\""NV""[K&($L(K)=1)!(K?.N&(K>0)&(K'>PST))" D R0^KF5A 16 I K="N"!(PST'>0) D S5,S2,S6 G 5 17 I K?.N S PST=K,ULT=$$ULT(U2,K) I ULT="-" K ULT G 12 I K="V" S ULT=$$ULT(U2,PST) I ULT="-" K ULT G 12 D S5 18 S UAA=UA,UA=UA-PST,PRE=($P(PRE,"#",1)-PST)_"#"_($P(PRE,"#",2)-PST)_"#"_$P(PRE,"#",3),UEP=$P(U2,D,16)/UAA,UA=PST,UM="KF0",UH=$P(U2,D,10)/UAA*UA*UPAR D S1 19 S UH=$P(U2,D,9),UA=UAA-PST,UN=$J(UH/UAA*UA,1,2) D S4,S2 S UA=PST,UN=$J(UH/UAA*UA,1,2),UM="KF6" D S4,S3,S7 G 5 37 S X=@("^"_Q_"UL(KC,US,URR,1)"),^(1)=$P(X,D,1,20)_D_ULV_D_$P(X,D,22,99) ; YZ K PC,PN,PR,PRE,PST,PV,U2,TU2,UA,UAA,UBE,UEP,UUZ,UM,UH,UN,TR,TZ,UZN,UGW,UPT,UPB,PB,PL,PM,LC,LPT,LVW,ULV,UPAR,PPAR,UVM,UVW,X,VWTYP Q ; M1 S MSG="TOELEVERING "_TR_" IN GEBRUIK" G MY M2 S MSG="PRODUKT IN GEBRUIK" G MY M3 S MSG="NOG NIET ONTVANGEN" G MY MY S FP=2403+F60 W @F,@F4,MSG," ! [] = OK ",@F5,@F0 R K MZ K MSG Q ; ULT(U2,AA) N K,R,PR,ULT,%TC,%INT,%EXT,%WK N BackOrd,IsStock,FysStock,PraStock,TeoStock S BackOrd=$P(U2,D,3)-AA,PR=$P(U2,D,2),IsStock=$P(^KPR(PR,1),D,20) S R=$$GETSTOCK^PRODUKT4(PR),FysStock=$P(R,D),PraStock=$P(R,D,2),TeoStock=$P(R,D,3) I FysStock-AA'<(BackOrd) D .S ULT=$$LEVWK^PRODUKT4(PR,KC) E I IsStock D .S ULT=$$LEVWK^PRODUKT4(PR),Index="W 0.0T" .F S Index=$O(^KPR(PR,Index)) Q:Index="" D ..S R=^KPR(PR,Index) ..Q:$P(R,D,4)ULT ..S ULT=$$INTDATE^vhLib.DataTypes($P(R,D,6),"DW") .S ULT=$$CALCDATE^vhLib.DataTypes(ULT,"W","+1") E S ULT=$$LEVWK^PRODUKT4(PR),ULT=$$CALCDATE^vhLib.DataTypes(ULT,"W","+1") S ULT=$$EXTDATE^vhLib.DataTypes(ULT,"DW") I $$INTDATE^vhLib.DataTypes(ULT,"DW")>$$INTDATE^vhLib.DataTypes($P(U2,D,25),"DW") D .S FP=2203 .Write @F,"AANTAL UITLEVEREN : ",AA," - BACKORDER : ",BackOrd,@F2 .F D Q:K="-" Q:%TC ..S R="K\23\3\LEVERTERMIJN BACKORDER\C4\5\\" ..D R0^KF5A ..I "-"[K S:K="-" ULT=K Q:K="-" S %TC=1 Q ..D VALDATE^vhLib.DataTypes(K,"DW") ..Q:'%TC ..I K?.N S %WK=$$EXTDATE^vhLib.DataTypes(,"W") I $P(%EXT,"/",2)<%WK S $P(%EXT,"/")=$$EXTDATE^vhLib.DataTypes($$CALCDATE^vhLib.DataTypes(,"J","+1"),"J") ..S ULT=%EXT E S ULT=$P(U2,D,25) Q $$INTDATE^vhLib.DataTypes(ULT,"DW") ;