KPSBT ;STOCKBEHEER (beheer van bestellingen) ;KPSB ; Quit naar KPSB [ 09/24/2003 2:14 PM ] G 1 ; T1 ;Rubriek : T2 ;1 = leverweek 2 = aantal - = annuleer T3 ;Levertermijn T4 ;Aantal T5 ;[] = T6 ;AANTAL : T7 ;v = definitief verwijderen : . ; R0 S R7=1 S:$P(R,D,8)'="" R7=R7_"&("_$P(R,D,8)_")" S:$P(R,D,7)'="" R7=R7_"&("_$P($T(@$P(R,D,7)),U,2,99)_")" R0A S R2=$P(R,D,2),R3=$P(R,D,3),R4=$P(R,D,4),R5=$P(R,D,5),R6=$P(R,D,6),R8="",$P(R8,".",R6)="." R0B S R0=$L(R4)+R3+3 S FP=R2*100+R3+F60 W @F W:R3<4 @F1 W @F2,R4," : " I R5'="" W:R5["""" !?2,@F2,@R5 D:R5'["""" @R5 R0C S FP=R2*100+R0+F60 W @F,@F2,R8,@F,@F0 R K W @F2 I $L(K)'>R6,K'["""",K'[D,K'?.E1C.E,@R7 S @$P(R,D)=K R0D E G R0C R0E S FP=$P(R,D,9)*100+$P(R,D,10) I FP W @F,$J("",R6),@F,K R0Z K R,R0,R2,R3,R4,R5,R6,R7,R8 Q ;V8 05.07.88 ; S1 I $E(R)=" " S R=$E(R,2,99) G S1 S1Z Q ; S2 S PRX="",SW13=1 D ^KPSB2,^KPSBW1 S K=KK,B(0)=@Q3,^(1)=B(1),PRX=PR S2Z Q ; S3 S UBE=$J(UEP*UA/$P("1\100\1000",D,$F("EHM",USP)-1),1,2),UN=$J(PA*UA/$P("1\100\1000",D,$F("EHM",USP)-1),1,2) S3A S K="",$P(K,D,35)=D,$P(K,D,2)=PR,$P(K,D,3)=UA,$P(K,D,4)=UE,$P(K,D,6)=UEP,$P(K,D,7)=PK1_"#"_PK2 S3B S $P(K,D,9)=UN,$P(K,D,10)=UN,$P(K,D,12)="L",$P(K,D,13)=UZ-100,$P(K,D,16)=UBE,$P(K,D,17)="KTRPL",$P(K,D,21)=USP,$P(K,D,22)=UMC,$P(K,D,25)=ULT S3Z Q ; COMPDATE(Val,Op,Ref) Set $E(Val,2)=$E(Val,2)_"/",$E(Ref,2)=$E(Ref,2)_"/" Set Val=$$INTDATE^vhDTyp(Val,"DW"),Ref=$$INTDATE^vhDTyp(Ref,"DW") Q $$COMPDATE^vhDTyp(Val,"W",Op,Ref) ; 1 I LC'=LCX D M8 S FP=2401 W @F,@F1 S K=COMM G YZZZ 11 S SCHTYP="NWV",KK=K I K="V" G 9:$D(TAB) S K=COMM G YZZ I K="W" G 2:$D(TAB) S K=COMM G YZZ G 2:TR 12 L (@("^"_Q_"PSB(LC)"),@("^"_Q_"TO(0,""TR"")")) S TR=$$GETNUM^FLOW("KTO","KTO1") 17 L (@("^"_Q_"PSB(LC)"),@("^"_Q_"TO(LC,TR)")) 18 S @("^"_Q_"TO(LC,TR,0)")=101,^(1)=D_DT_"\STOCK\\\"_LC_"\\\\\\\\\\\\\\\\\\\\",@("^"_Q_"TO1(TR)")=LC_D,@("^"_Q_"TO2(LC,TR)")="" 19 S FP=173 W @F,@F2 S R=TR D R3^cA103 ; 2 I KK="N" L (@("^"_Q_"PSB(LC)"),@("^"_Q_"TO(LC,TR)"),@("^"_Q_"PR(PR)")):2 E G M3 20 I KK="W" L (@("^"_Q_"PSB(LC)"),@("^"_Q_"TO(LC,+TR)"),@("^"_Q_"PR(PR)"),@("^"_Q_"TO(LC,$P(TAB(TA(6)),D,1))")):2 E G M3 23 S:K="N" X=@("^"_Q_"TO(LC,TR,1)") S:K="W" X=@("^"_Q_"TO(LC,$P(TAB(TA(6)),D,1),1)") S UI=$P(X,D,2),UOD=$TR($$EXTDATE^vhDTyp($$INTDATE^vhDTyp(UI),"DS"),D,"") 25 S UJ=$P(X,D,3),UVM=$P(X,D,18) I KK="N" S (UA,SUG)=$P(B(2),D,SSelect),UZ=^(0) 26 I KK="W" S K=TAB(TA(6)),(UA,SUG)=$P(K,D,4),(ULT,ULTX)=$P(K,D,5),R=$P(K,D,6) D S1 S UZ=100+R,K=^(UZ) 27 S X=@("^"_Q_"PR(PR,0)"),PC=$P(X,D,1),PST=$P(X,D,14),PY=$P(X,D,17),ScanTyp=$P(X,D,24),LogSt=ScanTyp="L" 29 S X=^(1),UE=$P(X,D,12),PSN=$P(X,D,20) G YZ:'$$IsCommAkt^PRODUKT2(PR,,,0) S X=@("^"_Q_"PR(PR,2)"),PRE=$P(X,D,9),PID=$P(X,D,25) S PWVS=$P($G(^PRSTOCK("D",PR)),D,5),PWVR=$P($G(^PRSTOCK("D",PR)),D,6) S:PWVS PWVS=$$CV2MAG^MRP(PR,PWVS),PST=PST+PWVS S:PWVR PWVR=$$CV2MAG^MRP(PR,PWVR),PST=PST-PWVR ; 3 S FP=1801 W @F,@F1 S FP=1803+F60 W @F,$C(13),?2,"IDENTNR : ",?12,PID,?27,"PRODUKT : ",PC 31 S X=$N(@("^"_Q_"PR(PR,""J"")")),X=^(X) 33 S UMC=$P(X,D,17) G M4:"I"[UMC I $L(UVM)&(UVM'=UMC) G M1 34 S PLQ=$P(X,D,6),PGV=$P(X,D,16),USP=$P(X,D,28),MaxLogSt=$P(X,D,22) N NoSa S NoSa=$$NoSaAankoop^PRODUKT2(PR) S R=$$LEVPR^KPRIJS(LC,PR,NoSa),PA=$P(R,D),UEP=$P(R,D,4),PK1=$P(R,D,5),PK2=$P(R,D,6) 35 I KK="W" S UEP=$P(K,D,6),PK1=$P($P(K,D,7),"#",1),PK2=$P($P(K,D,7),"#",2),USP=$P(K,D,21),UMC=$P(K,D,22) 36 S PLL=$P(X,D,7) S:'$L(USP) USP="E" I $H#7'=4,'PSN,PLL=1,LC=5005,$E(PID)'=7 S PLL=2 360 G 39:KK="W" 37 S ULT=$$INTDATE^vhDTyp(%WK,"DW")+(PLL*7),ULT=$$EXTDATE^vhDTyp(ULT,"DW"),ULT=$TR(ULT,"/","") I $$COMPDATE(ULT,">",$P(PAR(2),D,SSelect-1)) D .S ULT=$$EXTDATE^vhDTyp($$CALCDATE^vhDTyp($$INTDATE^vhDTyp($E(ULT,1,2)_"/"_$E(ULT,3,4),"DW"),"W",-CorLevT),"DW") .S ULT=$TR(ULT,"/","") 38 S:$$COMPDATE(ULT,"<",$P(PAR(2),D,SSelect-1)) ULT=$P(PAR(2),D,SSelect-1) S (ULT,ULTX)=$E(ULT,1,2)_"/"_$E(ULT,3,4) 39 S R=PSN_D_(PST-$P(PRE,"#",2))_D_$P(PY,"#",2)_D_ULT_D_PLQ_D_UEP_D_PK1_D_PK2_D_PA_D_UMC_D_USP_D_PGV_D_SUG_D_MaxLogSt D ^KPSBT1 S:'PLQ PLQ=1 S:'PGV PGV=1 I LogSt,$$COMPDATE($TR(ULT,"/",""),">",$TR($$EXTDATE^vhDTyp($$CALCDATE^vhDTyp(,"W","+1","MD"),"DW"),"/","")) D M10 I LogSt,UA>MaxLogSt D M9 ; 4 S FP=2303 W @F,@F1,@F,$P($T(T1),U,2),!?2,$P($T(T2),U,2) 41 S FP=2313 W @F,@F2,"." 43 K IK D IK^KPSBY S:K="" K="T" I K'?.N G 43:"-T?PSHN"'[K,99:K="-",6:UA S K=2 45 G 43:K>2,5:K=2 46 S R="K\23\3\"_$P($T(T3),U,2)_"\"""_$P($T(T5),U,2)_ULTX_"""\5" D R0 G 4:K="-" S:K="" K=ULTX D VALDATE^vhDTyp(K,"DW") G 46:'%TC S:K?.N&($P(%EXT,"/",2)<%WK) $P(%EXT,"/")=$$EXTDATE^vhDTyp($$CALCDATE^vhDTyp(,"J","+1"),"J") S K=%EXT 47 S:K="" K=ULTX S ULT=K,FP=2113 W @F92,@F," ",@F,ULT,@F93 48 S K=$$INTDATE^vhDTyp(%WK,"DW")+(PLL*7),K=$$EXTDATE^vhDTyp(K,"DW"),K=$TR(K,"/","") 49 D:$$COMPDATE(K,">",$TR(ULT,"/","")) M7 I LogSt,$$COMPDATE($TR(ULT,"/",""),">",$TR($$EXTDATE^vhDTyp($$CALCDATE^vhDTyp(,"W","+1","MD"),"DW"),"/","")) D M10 G 4 ; 5 S R="K\23\3\"_$P($T(T4),U,2)_"\"""_$S(SUG:$P($T(T5),U,2)_SUG,1:"") 51 S R=R_"""\7\\""-""[K&$L(K)!(K?.N&(K>0))!(K=""""&SUG)\\" D R0 I K="" S K=SUG 53 G 4:K="-" S UA=K D M5:UAMaxLogSt D M9 55 S FP=2213 W @F92,@F,$J("",6),@F,UA,@F93 G 4 ; ; Nieuwe lijn 6 G 8:KK="W" S KK=K 65 I '$L(UVM) S X=@("^"_Q_"TO(LC,TR,1)"),X=$P(X,D,1,17)_D_UMC_D_$P(X,D,19,99),^(1)=X 67 D S3 ; 7 S @("^"_Q_"TO(LC,TR,0)")=UZ+1,^(UZ)=K I UZ>160 D .N R .S R=$$^vhTXTPOP("FLOW","WARNLINES",,UZ-100,70) D SWNODE^FLOWTOE(LC,TR,UZ) Set Toelevering = ##class(DOM.DomeinContext).Instance().GeefToeleveringAPI().GeefToelevering(TR) Set ToeleveringModifiedEventData = ##class(TECH.Events.ToeleveringModifiedEventData).%New(Toelevering) Set ToeleveringModifiedEvent = ##class(TECH.Events.ToeleveringModifiedEvent).%New(ToeleveringModifiedEventData) Do ##class(TECH.PubSub.OrchestrationContext).GetEventRaiser().RaiseEventAsync(ToeleveringModifiedEvent) 71 D S2 G YZ ; ; Wijzigen lijn 8 N TLUNr S TLUNr=$P(@("^"_Q_"TO(LC,$P(TAB(TA(6)),D,1),UZ)"),D,15) S KK=K,K=TAB(TA(6)) I UA=$P(K,D,4),ULT=$P(K,D,5) S K=KK G YZ D KWNODE^FLOWTOE(LC,$P(TAB(TA(6)),D,1),UZ) 85 D S3 S $P(K,D,15)=TLUNr,@("^"_Q_"TO(LC,$P(TAB(TA(6)),D,1),UZ)")=K D SWNODE^FLOWTOE(LC,$P(TAB(TA(6)),D,1),UZ) Set Toelevering = ##class(DOM.DomeinContext).Instance().GeefToeleveringAPI().GeefToelevering($P(TAB(TA(6)),D,1)) Set ToeleveringModifiedEventData = ##class(TECH.Events.ToeleveringModifiedEventData).%New(Toelevering) Set ToeleveringModifiedEvent = ##class(TECH.Events.ToeleveringModifiedEvent).%New(ToeleveringModifiedEventData) Do ##class(TECH.PubSub.OrchestrationContext).GetEventRaiser().RaiseEventAsync(ToeleveringModifiedEvent) D S2 G YZ ; ; Verwijderen lijn 9 L (@("^"_Q_"PSB(LC)"),@("^"_Q_"TO(LC,+TR)"),@("^"_Q_"PR(PR)"),@("^"_Q_"TO(LC,$P(TAB(TA(6)),D,1))")):2 E G M3 90 S FP=2303 W @F,@F1,$P($T(T7),U,2) S FP=2332 U 0:(::::1) W @FCH R *K U 0:(:::::1) W @FCS S K=$C(K) G 90:"-vS"'[K,90:K="",99:K'="v" I $P(TAB(TA(6)),D,1)'=TR S K=$$^vhTXTPOP("KPSBT","LDELETE","",$P(TAB(TA(6)),D,1),TR) G 99:K'="V" 91 S K=TAB(TA(6)),W=$D(@("^"_Q_"PR(PR,0)")),W="W" 92 S W=$N(^(W)) G 99:$E(W)'="W",92:$E(W,24,26)'=$P(K,D,6) S R=$E(W,18,23) D S1 G 92:R'=$P(K,D,1) S R=$E(W,24,26) D S1 S UZ=100+R D KWNODE^FLOWTOE(LC,$P(K,D,1),UZ) 96 K @("^"_Q_"TO(LC,$P(K,D,1),UZ)") 97 I $P(K,D,1)'=TR,$N(^(100))=-1 D .New ABNr .Set ABNr=$P(^KTO(LC,$P(K,D,1),1),D,10) .Do KILLAB^FLOWTOE3(LC,$P(K,D,1),ABNr) .K @("^"_Q_"TO(LC,$P(K,D,1))"),@("^"_Q_"TO1($P(K,D,1))"),@("^"_Q_"TO2(LC,$P(K,D,1))"),@("^"_Q_"TOB($P(K,D,1))"),^BLBeri("Z",$P(K,D,1)) .Set ToeleveringDeletedEventData = ##class(TECH.Events.ToeleveringDeletedEventData).%New($P(K,D,1)) .Set ToeleveringDeletedEvent = ##class(TECH.Events.ToeleveringDeletedEvent).%New(ToeleveringDeletedEventData) .Do ##class(TECH.PubSub.OrchestrationContext).GetEventRaiser().RaiseEventAsync(ToeleveringDeletedEvent) Else Do .Set Toelevering = ##class(DOM.DomeinContext).Instance().GeefToeleveringAPI().GeefToelevering($P(K,D,1)) .Set ToeleveringModifiedEventData = ##class(TECH.Events.ToeleveringModifiedEventData).%New(Toelevering) .Set ToeleveringModifiedEvent = ##class(TECH.Events.ToeleveringModifiedEvent).%New(ToeleveringModifiedEventData) .Do ##class(TECH.PubSub.OrchestrationContext).GetEventRaiser().RaiseEventAsync(ToeleveringModifiedEvent) 98 S KK="S" D S2 99 S K=COMM ; YZ L (@("^"_Q_"PSB(LC)"),@("^"_Q_"TO(LC,+TR)")) YZZ K KK,UI,UJ,UA,UOD,UZ,UVM,UMC,UE,UEP,ULT,ULTX,UBE,UN,USP,PC,PST,PWVS,PWVR,PID,PRE,PLQ,PLL,PK1,PK2,PGV,PA,PY,SUG,LosSt,MaxLogSt YZZZ Q ; M1 S MSG="MUNT PRODUKT NIET GELIJK AAN MUNT TOELEVERING" G MY M3 S MSG="PRODUKT IN GEBRUIK" G MY M4 S MSG="GEEN MUNTKODE VOOR DIT PRODUKT" G MY M5 S MSG="Aantal < minimum bestelhoeveelheid" G MZ M6 S MSG="Aantal geen veelvoud van de grootverpakking" G MZ M7 S MSG="De levertemijn is kleiner dan deze van de leverancier " G MZ M8 S MSG="Dit produkt is niet van de leverancier in behandeling " G MZ M9 S MSG="Aantal > maximum log steuer" G MZ M10 S MSG="De levertemijn is groter dan de huidige week+1 " G MZ MY S FP=2403+F60 W @F,@F2,@F4,MSG," [] = ok ",@F5,@F0 R K S K="B" G YZ MZ S FP=2403+F60 W @F,@F2,@F4,MSG," [] = ok ",@F5,@F0 R K Q ;