ATKMB ; Afstand-toegang voor klanten [ 05/31/2002 9:17 AM ] ; MOEDERB New R Quit:$G(DL(1))="MOEDERB" Do LDINIT^ATK(Input,Taal) If '$D(^HULP(%J,"MOEDERB")) Do .Do SCRNTYP^ATK("?",Taal) .Job MOEDERB^ATKJOB(%J,KLNr)::LTimeOut .If $T Set Time=$P($H,",",2) Do ..For Hang HangTime Quit:$P($H,",",2)-Time>LTimeOut!($O(^HULP(%J,"MOEDERB",""),-1)>MOEDERB(4))!$G(^HULP(%J,"MOEDERB")) ..If $P($H,",",2)-Time>LTimeOut Goto TIMEOUT^ATK If $D(^HULP(%J,"MOEDERB")) Do .Set:'$O(^HULP(%J,"MOEDERB","")) ^HULP(%J,"MOEDERB")=0 .Do MERGNAME^ATKPROD(1) .Do SCRNTYP^ATK(Input,Taal) .Do ADD^vhScherm(MOEDERB(3)-1,24) Quit ; INPUT(PRNr,AutoAant,IsPakket) New I,K,R,Aantal,MinAant,Verpak,IsStock,PerStuk,Colom,PraStock,Prijs Set AutoAant=$G(AutoAant),IsPakket=$G(IsPakket) If '$G(^HULP(%J,"MBINPUT",PRNr)) Do .New R .Job MBINPUT^ATKJOB(%J,PRNr,KLNr)::LTimeOut .If $T Set Time=$P($H,",",2) Do ..For Quit:$P($H,",",2)-Time>LTimeOut!$G(^HULP(%J,"MBINPUT",PRNr)) ..If $P($H,",",2)-Time>LTimeOut Goto TIMEOUT^ATK If $G(^HULP(%J,"MBINPUT",PRNr)) Do .Set R=$$PAKREF^ATKPROD(PRNr) Set:$L(R) ^HULP(%J,"MBINPUT",PRNr,"R")=R .Merge R=^HULP(%J,"MBINPUT",PRNr) .Set IsStock=$P(R(1),D,20),PerStuk=$P(R("J"),D,13),PraStock=$$GETSTOCK(PRNr,"P") .Set Aantal=$G(^HULP(%J,"MBINPUT","D",PRNr)) .If $L(AutoAant) Do ..Set:'IsPakket $P(Aantal,D)=AutoAant ..Set:IsPakket $P(Aantal,D,2)=$P(Aantal,D,2)+AutoAant .Else Do ..Set MinAant=$P(R("J"),D,6),Verpak=$P(R("J"),D,16) ..If IsStock Do ...Set:$P(R("J"),D,15)1 Set R=R_$$GETTXT^ATK("ATKMOEDERB","VEELV",Taal)_" "_Verpak If Verpak'=MinAant Set:$L(R) R=R_" " Set R=R_$$GETTXT^ATK("ATKMOEDERB","MINAANT",Taal)_" "_MinAant If 'IsStock,PraStock Set:$L(R) R=R_" " Set R=R_$$GETTXT^ATK("ATKMOEDERB","ENDSTOCK",Taal) Set:R="" Type=Type+1 If Type=2 Set R="0 "_$$GETTXT^ATK("ATKMOEDERB","DELETE",Taal) Quit " "_$G(R) ; ERRAANT() New R Set R=$$HELPAANT(1)_" "_$$GETTXT^ATK("ATKMOEDERB","AUB",Taal)_" "_$$GETTXT^ATK("ATKMOEDERB","OK",Taal) Quit R ; HELPRUBR(RubrNr) New R If $D(sDir) Do .Set R=$$GETTXT^ATK("ATKMOEDERB",$S(RubrNr=1:"ANULING",1:"VORIGING"),Taal) .Set R=R_" "_$$GETTXT^ATK("ATKMOEDERB","EINDEING",Taal) Quit $G(R) ; SINIT New I,Rubr For I=1:1 Quit:'$D(sScrnDef(I)) Do .Quit:$P(sScrnDef(I),"`",4)["H" .Set Rubr=$P(sScrnDef(I),"`",15) .If $L(Rubr) Do ..Set R=$$GETTXT^ATK("ATKMOEDERB",Rubr,Taal) ..If Rubr="PRIJS",$D(R("P")) Set R=R_" ("_$P(R("P"),D,2)_"/"_$P(R("P"),D,3)_")" .Set:$L(R)>$G(Colom) Colom=$L(R) Quit ; SIINIT New I If $$NOPRICE^ATK() Do PUTATTR^vhScherm(6,"H","H") If IsStock For I=7,9 Do PUTATTR^vhScherm(I,"H","H") Do SINIT Quit ; SPINIT Do SINIT Quit ; SCINIT Set LevAdr=$G(LevAdr),Memo=$G(Memo) If '$G(^HULP(%J,"LEVADR")) Set LevAdr=^HULP(%J,"KLINIT",0) Else If ^HULP(%J,"LEVADR")=1 Set LevAdr=^HULP(%J,"LEVADR",1) Else Do REMATTR^vhScherm(6,"D","D") Do SINIT Quit ; COMMAND New R,IK If $D(^HULP(%J,"MBINPUT","D")),Menu'["\Z\" Set Menu=Menu_"Z\" For Do Quit:$L(Input) .Do REFRESH^ATK .If $D(DefInput) Set Input=DefInput Kill DefInput .Else Do ..Kill zb ..Set DL(3)=-STimeOut ..If $D(DL(1)),$D(@DL(1)@(1)) Do ...Do SL^ATK ..Else Do ...New IK ...Set IK(2)=DL(3) ...Do IK^PROC ..Kill DL(3) ..If $G(zb)="",$G(R)="" Set R="-" ..Set Input=R .If "\-\?\+\*\ENTER\"'[(D_Input_D) Set Input=$$ITRANSL^ATKMENU(Input,Taal) .If Input="+",$L($$MAKTIE^ATKMENU($G(DL(1)))) Do MENU^ATKMENU(Input) Set:Input="+" Input="" .If "\P\U\=\"[(D_Input_D) Set Input=$$ITRANSL^ATKMENU(Input,Taal,1) Quit .If '$$CHKMENU^ATKMENU() Do Quit ..If "\-\?\+\*\ENTER\"'[(D_Input_D) Set Input=$$ITRANSL^ATKMENU(Input,Taal,1) .If Input="ENTER" Do ENTER .If Input="D" Do DETAIL,SCRNTYP^ATK("M",Taal) Quit .If Input="N" Do NIEUWPR() .If Input="X" Do DELETE .If Input="Z" Do CLOSE(Input) .Set Input="" Set:Menu["\Z\" Menu=$P(Menu,"\Z\")_D_$P(Menu,"\Z\",2) Quit ; CLOSE(Input) New I,R,sFL,MinLevT,Prompt,LevAdr,Memo,LcUser Quit:'$D(^HULP(%J,"MBINPUT","D")) If Input="-" Do .Set Prompt=$$GETTXT^ATK("ATKMOEDERB","TOCLOSE",Taal)_" "_$$GETTXT^ATK("ATKMOEDERB","OK",Taal) .Do TXT^vhINP(Prompt,"",ITimeOut,1) Set LcUser=^HULP(%J,"KLINIT","LcUser") Set:LcUser="" LcUser=UserName Set MinLevT=$$LEVTERM(),$P(sFL(1),D,7)=MinLevT,$P(sFL(1),D,8)=LcUser,OrdBev="" If Menu["\Y\",'$G(^HULP(%J,"LEVADR")) Do If Menu["\Y\",'$G(^HULP(%J,"LEVADR")) Do .Do SCRNTYP^ATK("?",Taal) .Job LEVADR^ATKJOB(%J,KLNr)::LTimeOut .If $T Set Time=$P($H,",",2) Do ..For Hang HangTime Quit:$P($H,",",2)-Time>LTimeOut!$G(^HULP(%J,"LEVADR")) ..If $P($H,",",2)-Time>LTimeOut Goto TIMEOUT^ATK .Do SCRNTYP^ATK("M",Taal) Do NIEUW^vhScherm("ATKMBCLOSE","","","","") If %SC Do .Set $P(sFL(1),D,3)=$$EXTDATE^vhDTyp($H,"DKP")_" VHISIE "_$P(sFL(1),D,3) .Set $P(sFL(1),D,8)=$P(sFL(1),D,8)_"#1",^HULP(%J,"MBINPUT","D")=sFL(1) .Set:$G(LevAdr)'=^HULP(%J,"KLINIT",0) ^HULP(%J,"MBINPUT","D","LEVADR")=LevAdr .Set:$L($G(Memo)) ^HULP(%J,"MBINPUT","D","MEMO")=Memo .Job MBCLOSE^ATKJOB(%J,KLNr)::LTimeOut .If $T Set Time=$P($H,",",2) Do ..For Quit:$P($H,",",2)-Time>LTimeOut!^HULP(%J,"MBINPUT","D") ..If $P($H,",",2)-Time>LTimeOut Goto TIMEOUT^ATK .If ^HULP(%J,"MBINPUT","D") Kill ^HULP(%J,"MBINPUT","D") .For I=$O(^HULP(%J,"MOEDERB",""),-1):-1:1 Do ..Set R=^HULP(%J,"MOEDERB",I) ..Quit:$P(R,D,5)'="N" ..Kill ^HULP(%J,"MOEDERB",I) .Kill @DL(1)@(7) .Set @DL(1)@(6)=1,@DL(1)@(9)=I If Input="-"!%SC Do .Set Prompt=""""_$$GETTXT^ATK("ATKMOEDERB","INTVERK",Taal)_" " .Set:%SC Prompt=Prompt_$$GETTXT^ATK("ATKMOEDERB","ONTV",Taal) .Do:'%SC ..Set Prompt=Prompt_$$GETTXT^ATK("ATKMOEDERB","NTONTV1",Taal) ..Set Prompt=Prompt_" "",@FMTK,"""_$$GETTXT^ATK("ATKMOEDERB","NTONTV2",Taal)_""",@FMTk,@FMTI,"" " ..Set Prompt=Prompt_$$GETTXT^ATK("ATKMOEDERB","NTONTV3",Taal) .Set Prompt=Prompt_" "_$$GETTXT^ATK("ATKMOEDERB","OK",Taal)_"""",FP=2201 .Write @F,@F1 .Do TXT^vhINP(Prompt,"",ITimeOut,1) Quit ; LEVTERM() New PRNr,Weken,IsStock,Aantal Set PRNr="",Weken=0 For Set PRNr=$O(^HULP(%J,"MBINPUT","D",PRNr)) Quit:'PRNr Do .Quit:'$D(^HULP(%J,"MBINPUT",PRNr)) .Set R=^HULP(%J,"MBINPUT",PRNr,1),IsStock=$P(R,D,20) .Quit:IsStock .Set R=^HULP(%J,"MBINPUT","D",PRNr),Aantal=$P(R,D)+$P(R,D,2) .Quit:Aantal'>$$GETSTOCK(PRNr,"P") .Set R=^HULP(%J,"MBINPUT",PRNr,"J") Set:$H#7<4 $P(R,D,7)=$P(R,D,7)+1 Set:Weken<$P(R,D,7) Weken=$P(R,D,7) Set Weken=Weken+1 Quit $$CALCDATE^vhDTyp($H,"W",Weken,"FD") ; DELETE New PRNr,Aantal,moederb Set PRNr=$$GETPROD^ATKPROD() Quit:'PRNr Set Aantal=^HULP(%J,"MBINPUT","D",PRNr),$P(Aantal,D)="" If $P(Aantal,D,2) Set ^HULP(%J,"MBINPUT","D",PRNr)=Aantal Merge moederb=@DL(1) Else Do KILL If @DL(1)@(9)'=moederb(9) Do .Do ADD^vhScherm(5,24) Else If @DL(1)@(6)=moederb(6),moederb(6)-moederb(7)+moederb(3)<$G(sRT) Do EL^PROC If '$D(^HULP(%J,"MBINPUT","D")) Set Menu=$P(Menu,"\Z\")_D_$P(Menu,"\Z\",2) Quit ; NIEUWPR(PRNr,AutoAant,IsPakket) New R,PakNr,Next,KortText,Prijs,NewPr Set PRNr=$G(PRNr),AutoAant=$G(AutoAant),IsPakket=$G(IsPakket),PakNr="" If 'PRNr Set PRNr=$$SELECT^ATKPROD(Taal),PakNr=$P(PRNr,"#",2) If PRNr Do .Set NewPr=1 .Do INPUT(PRNr,AutoAant,IsPakket) .Quit:'$D(^HULP(%J,"MBINPUT","D",PRNr)) .For I=1:1 Quit:'$D(^HULP(%J,"MOEDERB",I)) If $P(^HULP(%J,"MOEDERB",I),D,15)=PRNr Set NewPr=0 Quit .Kill @DL(1)@(7) .If 'NewPr Set @DL(1)@(6)=I Quit .Set R=^HULP(%J,"MBINPUT",PRNr,0),KortText=$P(R,D) .Set R=^HULP(%J,"MBINPUT",PRNr,"P"),Prijs=$P(R,D,1,3) .Set R=D_KortText_"\\\N"_D_Prijs_D_Prijs_"\\\\"_PRNr_D .Set Next=^HULP(%J,"MOEDERB")+1,^HULP(%J,"MOEDERB")=Next,^HULP(%J,"MOEDERB",Next)=R .Set @DL(1)@(6)=Next If PakNr Do PAKKET(PakNr) Quit ; PAKKET(PakNr) New R,AutoAant,AantPak,OldAant,ProdAant,PRNr,Colom,PakNaam If '$D(^HULP(%J,"MBINPUT","P",PakNr)) Do .Set ^HULP(%J,"MBINPUT","P")=0 .Job MBPAKKET^ATKJOB(%J,PakNr)::LTimeOut .If $T Set Time=$P($H,",",2) Do ..For Hang HangTime Quit:$P($H,",",2)-Time>LTimeOut!$G(^HULP(%J,"MBINPUT","P")) ..If $P($H,",",2)-Time>LTimeOut Goto TIMEOUT^ATK .Set $P(^HULP(%J,"MBINPUT","P",PakNr),D)="" If $D(^HULP(%J,"MBINPUT","P",PakNr)) Do .Set R=^HULP(%J,"MBINPUT","P",PakNr),(AantPak,OldAant)=$P(R,D),PakNaam=$P(R,D,2) .Do DISPLAY^vhScherm("ATKMBPAK"),FIELD^vhScherm("ATKMBPAK","AANTPAK"),ADD^vhScherm(18,24) .Set:AantPak=0 AantPak="" .If $L(AantPak),'AantPak Quit .Quit:AantPak=OldAant .Set ^HULP(%J,"MBINPUT","P",PakNr)=AantPak .Set PRNr="" .For Set PRNr=$O(^HULP(%J,"MBINPUT","P",PakNr,PRNr)) Quit:'PRNr Do ..Set ProdAant=+^HULP(%J,"MBINPUT","P",PakNr,PRNr),AutoAant=ProdAant*-OldAant ..Do NIEUWPR(PRNr,AutoAant,PakNr) ..Set AutoAant=ProdAant*AantPak ..Do NIEUWPR(PRNr,AutoAant,PakNr) .Do ADD^vhScherm(5,24) Quit ; KILL New NewPr Kill ^HULP(%J,"MBINPUT","D",PRNr),^HULP(%J,"MBINPUT","S",PRNr) Set NewPr=0 For I=1:1 Quit:'$D(^HULP(%J,"MOEDERB",I)) Set R=^HULP(%J,"MOEDERB",I) If $P(R,D,15)=PRNr Set:$P(R,D,5)="N" NewPr=1 Quit Quit:'$D(^HULP(%J,"MOEDERB",I)) Kill @DL(1)@(7) Set @DL(1)@(6)=I Quit:'NewPr Set:@DL(1)@(6)>1 @DL(1)@(6)=@DL(1)@(6)-1 Set @DL(1)@(9)=@DL(1)@(9)-1,^HULP(%J,"MOEDERB")=^HULP(%J,"MOEDERB")-1 Kill ^HULP(%J,"MOEDERB",I) For I=I+1:1 Quit:'$D(^HULP(%J,"MOEDERB",I)) Do .Set ^HULP(%J,"MOEDERB",I-1)=^HULP(%J,"MOEDERB",I) .Kill ^HULP(%J,"MOEDERB",I) Quit ; ENTER New PRNr Set PRNr=$$GETPROD^ATKPROD() Quit:'PRNr Do INPUT(PRNr) Quit ; DETAIL New I,R,PRNr,Count,DL,MOEDERB,zb Kill ^HULP(%J,"COPYMOEDERB") Merge ^HULP(%J,"COPYMOEDERB")=^HULP(%J,"MOEDERB") Kill ^HULP(%J,"MOEDERB") Set Count=0 For I=1:1 Quit:'$D(^HULP(%J,"COPYMOEDERB",I)) Do .Set R=^HULP(%J,"COPYMOEDERB",I),PRNr=$P(R,D,15) .Set:$D(^HULP(%J,"MBINPUT","D",PRNr)) Count=Count+1,^HULP(%J,"MOEDERB",Count)=R Do LDINIT^ATK("M",Taal),ADD^vhScherm(5,24) Set @DL(1)@(6)=0 Do .Set R=Menu .New Menu .Set Menu=R_"D\" .Do SCRNTYP^ATK(Input,Taal),REFRESH^ATK Do .New DL .Do MENU^ATKMENU(1) For Do Quit:"\-\?\*\ENTER\"[(D_Input_D)!$$CHKMENU^ATKMENU(Menu) .Set DL(3)=-STimeOut .Do SL^ATK .If $G(zb)="",$G(R)="" Set R="-" .Set Input=R .If "\-\?\+\*\ENTER\"'[(D_Input_D) Set Input=$$ITRANSL^ATKMENU(Input,Taal) Do ADD^vhScherm(5,24) Kill ^HULP(%J,"MOEDERB") Merge ^HULP(%J,"MOEDERB")=^HULP(%J,"COPYMOEDERB") Kill ^HULP(%J,"COPYMOEDERB") Quit ; SELLEVAD() New R,DL,LEVADR,LevAdr,zb Do LDINIT^ATK("Y",Taal) Set LEVADR(3)=22,LEVADR(4)=3,LevAdr=$G(^HULP(%J,"LEVADR")) Set:LEVADR(4)>LevAdr LEVADR(4)=LevAdr,LEVADR(3)=25-LevAdr Do WL^ATK Set DL(3)=-ITimeOut For Do Quit:R="-"!(R="ENTER") If $G(zb)="",$G(R)="" Set R="-" Quit .Do SL^ATK If R="ENTER" Set R=^HULP(%J,"LEVADR",LEVADR(6)) Set FP=LEVADR(3)*100+1 Write @F,@F1 Quit R ; BOLD(Test) Set Test=$G(Test,Selected) Quit Test&'$D(^HULP(%J,"COPYMOEDERB")) ; GETSTOCK(PRNr,Type) New FysStock,PraStock,TeoStock Set Type=$G(Type) Quit:"\\F\T\P\"'[(D_Type_D) "?" Set R=$G(^HULP(%J,"MBINPUT",PRNr,"S")) Set FysStock=$P(R,D),PraStock=$P(R,D,2),TeoStock=$P(R,D,3) Quit $S(Type="F":FysStock,Type="P":PraStock,Type="T":TeoStock,1:FysStock_D_PraStock_D_TeoStock) ; STAFFEL(Prijs) If Selected,$D(^HULP(%J,"MBINPUT","S",PRNr)) Set Prijs=$P(^HULP(%J,"MBINPUT","S",PRNr),D) Quit $$MASK^ATK(Prijs) ;