PRPUTZ ;Product Prijsuitzonderingen [ 02/22/2002 8:20 AM ] ; N Set NoSa="N" Goto DO S Set NoSa="S" Goto DO ; DO Do VERWERK("",NoSa) Quit ; VERWERK(PRNr,NoSa) New PRPUTZ,Extern,Kode,sS,PRNr,KLNr New PrijsKl,KlMunt,IsHandel,NetBrut Set PRNr="*" Do DISPLAY^vhScherm("PRPUTZ") If $G(NoSa)="" Set NoSa="N" If NoSa'="N",NoSa'="S" Quit Set FP=172 Write @F,@FMTB,$P(" Normale \ Schaduw ",D,NoSa="S"+1),@FMTb Set %J=$$%J^vhRtn1() Kill ^HULP(%J) Set Input=$G(Input),PRNr=$G(PRNr) If PRNr Set Extern=1 For Do Quit:PRNr="-"!$G(Extern) If $L(Input)=1,"-,"[Input Quit .If '$D(Extern) Set PRNr=$$SELECT^PRODUKT6() Quit:'PRNr .Do:$$LOCK() INIT,COMMAND,SAVE:Input="-" .Do CLEAN Kill ^HULP(%J) Quit ; LOCK() Lock +^KPR(PRNr):1 Else Do LDISP^vhLock("^KPR(PRNr)","Product") Quit 0 Lock +^PRPUTZ(NoSa,PRNr):1 Else Lock -^KPR(PRNr) Do LDISP^vhLock("^PRPUTZ(NoSa,PRNr)","Product") Quit 0 Quit 1 INIT Kill ^HULP(%J) Do INIT^PROC("PRPUTZ") Do ADD^vhScherm(1,24) Set (KLNr,VolgNr)="",Cnt=0 For Set KLNr=$O(^PRPUTZ(NoSa,PRNr,KLNr)) Quit:KLNr="" Do .For Set VolgNr=$O(^PRPUTZ(NoSa,PRNr,KLNr,VolgNr)) Quit:VolgNr="" Do ..Set Cnt=Cnt+1 ..Set ^HULP(%J,$G(^KK1(KLNr),"~")_Cnt)=KLNr_D_VolgNr_"`"_^PRPUTZ(NoSa,PRNr,KLNr,VolgNr) Do RL^PROC1 Set Input="" Set sS("MOD")=0 Set Input="" Quit COMMAND For Do If $L(Input)=1,"-."[Input Quit .Do REFRESH .Do SL^PROC .Set Input=R .;If Input="PRINT" Do PRINT(PRNr,"",NoSa,1) .;If Input="HELP" Do HELP .If Input="-"!(Input=".")!(Input="P") Set Input=$$SAVE^vhINP(1,sS("MOD")) .;If Input="S" Do NOSA .If Input="ENTER" Do LWIJZIG() .If Input="N" Do LNIEUW .If Input="V" Do LDELETE .If Input="X" Do LDELALL .If Input="C" Do CLEANUP Quit DELOBJ(PRNr,NoSa) New KLNr Set KLNr="" For Set KLNr=$O(^PRPUTZ(NoSa,PRNr,KLNr)) Quit:KLNr="" Do .Kill ^PRPUTZ("I"_NoSa,KLNr,PRNr) Kill ^PRPUTZ(NoSa,PRNr) Quit SAVE Quit:'sS("MOD") Do DELOBJ(PRNr,NoSa) Set LijnNr="" For Set LijnNr=$O(^HULP(%J,LijnNr)) Quit:LijnNr="" Do .Set Index=$P(^HULP(%J,LijnNr),"`") .Set Data=$P(^HULP(%J,LijnNr),"`",2) .Set ^PRPUTZ(NoSa,PRNr,$P(Index,D),$P(Index,D,2))=Data .Set ^PRPUTZ("I"_NoSa,$P(Index,D),PRNr)="" Quit CLEAN Kill ^HULP(%J) Lock -^PRPUTZ(NoSa,PRNr),-^KPR(PRNr) Quit LNIEUW New Index,Data Set Index="",Data="" Do NIEUW^vhScherm("PRPUTZDTL") Quit:'%SC Set $P(Index,D,2)=0 Do NIEUWV^PROC3(Index_"`"_Data) Set sS("MOD")=1 Quit ; LWIJZIG(Field) New Index,Data Quit:'$D(^HULP(%J,PRPUTZ(6))) Set Index=$P(^HULP(%J,PRPUTZ(6)),"`") Set Data=$P(^HULP(%J,PRPUTZ(6)),"`",2) Do EDIT^vhScherm("PRPUTZDTL") Quit:'%SC Set ^HULP(%J,PRPUTZ(6))=Index_"`"_Data Do EL^PROC Set sS("MOD")=1 Quit ; ; Verwijder een lijn LDELETE New R,SortKey Quit:'$D(^HULP(%J,PRPUTZ(6))) Do DELETE^PROC3 Set sS("MOD")=1 Quit ; ; Verwijder alle uitzonderingen van een klant LDELALL Do DL^PROC Set K=$$ASKL^vhINP("PRPUTZ","DELALL") If K="" Do EL^PROC Quit Kill ^HULP(%J) Do WL^PROC Set sS("MOD")=1 Quit ; REFRESH If sRT<(PRPUTZ(3)-1) Do DISPLAY^vhScherm("PRPUTZ","","","H") Kill DL(2) If sRT'