KLACHTO ; Klachtenbehandeling (opvolging) [ 10/28/2003 12:28 PM ] ; LEVER(LEVNr) New RegPar Set:'$G(LEVNr) LEVNr=$$SELECT^LEVER() Do:LEVNr .Set RegPar("LEVNR")=LEVNr .Do OPVOLG(.RegPar) Quit ; KLANT(KLNr) New RegPar If $G(KLNr) Set RegPar("DERDE")=KLNr Else Set KLNr=$$SELECT^KLANT6() Do:KLNr .Set RegPar("KLNR")=KLNr .Set RegPar("AUTOSEL")=1 .Set RegPar("VIA")="K\"_KLNr .Do OPVOLG(.RegPar) Quit ; TOE(TOENr,LEVNr) New RegPar,Lever If '$G(TOENr) Set:$G(LEVNr) Lever("L")=LEVNr Set TOENr=$$SELECT^FLOW("KTO","KTO1",1,,.Lever) Do:TOENr .Set LEVNr=$P(^KTO1(TOENr),D),RegPar("TOENR")=TOENr,RegPar("LEVNR")=LEVNr .Do OPVOLG(.RegPar) Quit ; RCP(RCPNr) New RegPar,LEVNr Set:'$G(RCPNr) RCPNr=$$SELECT^EWRCP() Do:RCPNr .Set LEVNr=$P(^RCP("D",RCPNr),D,2),RegPar("RCPNR")=RCPNr,RegPar("LEVNR")=LEVNr .Do OPVOLG(.RegPar) Quit ; ORD(ORDNr,KLNr) New RegPar,Klant If '$G(ORDNr) Set:$G(KLNr) Klant("K")=KLNr Set ORDNr=$$SELECT^FLOW("KOD","KO1",1,,.Klant) If ORDNr,$D(^KO1(ORDNr,"F")) Do .Set KLNr=$P(^KO1(ORDNr,"F"),D),RegPar("BORDNR")=ORDNr,RegPar("KLNR")=KLNr .Do OPVOLG(.RegPar) Quit ; BON(BONNr,KLNr) New RegPar,Klant If '$G(BONNr) Set:$G(KLNr) Klant("K")=KLNr Set BONNr=$$SELECT^FLOW("KUL","KU1",1,,.Klant) If BONNr,$D(^KU1(BONNr,"F")) Do .Set KLNr=$P(^KU1(BONNr,"F"),D),RegPar("BONNR")=BONNr,RegPar("KLNR")=KLNr .Do OPVOLG(.RegPar) Quit ; FAKT(FANr) New RegPar,KLNr Do:$G(FANr) .Set KLNr=$P($G(^KFA("F",FANr,0,0)),D) Set:'KLNr KLNr=$P($G(^KFAP("F",FANr,0,0)),D) .Set RegPar("FANR")=FANr,RegPar("KLNR")=KLNr .Do OPVOLG(.RegPar) Quit ; PROD(PRNr) New RegPar,LEVNr Set:'$G(PRNr) PRNr=$$SELECT^PRODUKT6() Do:PRNr .Set LEVNr=$P(^($O(^KPR(PRNr,"J"))),D),RegPar("PRNR")=PRNr,RegPar("LEVNR")=LEVNr .Do OPVOLG(.RegPar) Quit ; OPVOLG(RegPar) New %J,%SC,Derde,FromDate,ToDate,StrDate,RegistrUser,RegioVw,BehVw,Status,Opv,Input,Regio,Type,Groep,PrGroep,RZTyp,Sort,IncidentNr Do STORE^vhTERMINA() If '$G(CUserId) New CUserId Do .Set CUserId=$$DEVUSER^vhUSER($$IO^cQ5) .Quit:$L(CUserId,";")=1 .Set CUserId=$$DEVUSER^vhUSER($$IO^cQ5,1) If CUserId Do .Do SELECT .Quit:'%SC .For Set Input=$$SCROLL^vhLIST(.Opv) Do Quit:Input="CANC" ..Do:Input="COM" CALL^vhMenu("KLACHTO") ..Do EXEC^vhMenu("KLACHTO",.Input) .Kill ^HULP(%J) Do REFRESH^vhTERMINA() Quit ; SELECT New Temp For Temp="Derde","FromDate","ToDate","StrDate","RegioVw","BehVw","Status","IncidentNr" Set Temp(Temp)=$G(@Temp) If $G(RegPar("AUTOSEL")) Do .Do INIT .Set %SC=1 .Kill RegPar("AUTOSEL") Else Do EDIT^vhScherm("KLACHTO") If %SC Do .Do INIT^vhLIST("KLACHTO","OPVOLG",.Opv) .Do FETCH(Derde,FromDate,ToDate,StrDate,RegioVw,BehVw,Status,Sort,IncidentNr) Else For Temp="Derde","FromDate","ToDate","StrDate","RegioVw","BehVw","Status","IncidentNr" Set @Temp=Temp(Temp) Do:$D(Opv) .Do DISPLAY^vhScherm("KLACHTO") .Do WRITE^vhLIST(.Opv) Quit ; FETCH(Derde,FromDate,ToDate,StrDate,RegioVw,BehVw,Status,Sort,IncidentNr) New R,KlachtId,Quit,RDate,SDate,SortKey,Count,Bevat Kill ^HULP(%J) Set IncidentNr=$G(IncidentNr),KlachtId="",Quit=0 Set:IncidentNr KlachtId=IncidentNr+1 For Set KlachtId=$O(^KlachtD(KlachtId),-1) Quit:KlachtId="" Do Quit:Quit Quit:IncidentNr .If IncidentNr,KlachtId'=IncidentNr Quit .Set R=^KlachtD(KlachtId),SDate=$P(R,D,8),RDate=$P(R,D,31) Set:SDate="" SDate=$H .If FromDate,RDateToDate Quit .If StrDate,SDate>StrDate Quit .If $L(Derde),Derde'=D,$P(R,D,1,2)'=$TR(Derde,";",D) Quit .If $L(RegioVw),";"_RegioVw_";"'[(";"_$P(R,D,7)_";") Quit .If $L(RegistrUser),";"_RegistrUser_";"'[(";"_$P(R,D,30)_";") Quit .If $L(BehVw),";"_BehVw_";"'[(";"_$P(R,D,21)_";") Quit .If $L(Type),";"_Type_";"'[(";"_$P(R,D,4)_";") Quit .If $L(Groep),";"_Groep_";"'[(";"_$P(R,D,5)_";") Quit .If $L(PrGroep),";"_PrGroep_";"'[(";"_$P(R,D,6)_";") Quit .If $L(RZTyp) Do Quit:'Bevat ..Set Bevat=0 ..If $L($P(R,D,20)) For I=1:1:$L($P(R,D,20),";") Set Bevat=(";"_RZTyp_";"[(";"_$P($P(R,D,20),";",I)_";")) Quit:Bevat .If $L(Status),";"_Status_";"'[(";"_$$STATUS(KlachtId,,1)_";") Quit .If $L(Regio) Quit:$P(R,D)="L" Quit:";"_Regio_";"'[(";"_$P(^KKL(^KK1($P(R,D,2)),0),D,20)_";") .Set SortKey=$$SORTKEY(KlachtId,Sort) .Set $P(R,D,50)=KlachtId,^HULP(%J,0,SortKey)=R Set SortKey="",Count=0 For Set SortKey=$O(^HULP(%J,0,SortKey)) Quit:SortKey="" Do .Set R=^HULP(%J,0,SortKey),Count=Count+1,^HULP(%J,Count)=R Kill ^HULP(%J,0) Quit ; REFRESH Set RegPar("AUTOSEL")=1 Do SELECT Quit ; SORTKEY(KlachtId,Sort) New R,SortKey,Status,SortStat,SortGrp,SortType,Groep,Type,SDate,Derde,Naam,RegioVw,BehVw,SortRVw,SortBVw Set R=^KlachtD(KlachtId),Derde=$P(R,D,1,2),Groep=$P(R,D,5),Type=$P(R,D,4),SDate=$P(R,D,8) Set RegioVw=$P(R,D,7),BehVw=$P(R,D,21) Set Status=$$STATUS(KlachtId,,1),SortStat=1000+$P(^RES("KLACHT","PI","STATUS","D",Status),"`") Set SortKey=-KlachtId Do:Sort=1 .If $P(Derde,D)="K" Set Naam=$P(^KKL(^KK1($P(Derde,D,2)),0),D,2) .Else If $P(Derde,D)="L" Set Naam=$P(^KLE(^KL1($P(Derde,D,2)),0),D,2) .Else Set Naam="" .Set SortKey=$P(Derde,D)_Naam_SortStat_SDate_SortKey Do:Sort=2 .Set SortGrp=1000+$P($G(^RES("KLACHT","PI","GROEP","D",Groep)),"`") .Set SortType=1000+$P($G(^RES("KLACHT","PI","TYPE","D",Type)),"`") .Set SortKey=SortGrp_SortType_SortStat_SDate_SortKey Set:Sort=3 SortRVw=$$USERNAME^vhUSER(RegioVw,-1),SortKey=SortRVw_SortStat_SDate_SortKey Set:Sort=4 SortBVw=$$USERNAME^vhUSER(BehVw,-1),SortKey=SortBVw_SortStat_SDate_SortKey Quit SortKey ; INIT New LEVNr,KLNr Set:'$G(%J) %J=$$%J^vhRtn1() Set:'$G(CUserId) CUserId=$$DEVUSER^vhUSER($$IO^cQ5,1) Set Derde=$G(Derde,D) Set LEVNr=$G(RegPar("LEVNR")),KLNr=$G(RegPar("KLNR")) Set:LEVNr Derde="L\"_LEVNr Set:KLNr Derde="K\"_KLNr Set:'$D(FromDate) FromDate=$S($D(RegPar):$$CALCDATE^vhDTyp(,"M",-6,"FD"),1:"") Set:'$D(ToDate) ToDate=$S($D(RegPar):+$H,1:"") Set StrDate=$G(StrDate),RegistrUser=$G(RegistrUser),RegioVw=$G(RegioVw),BehVw=$G(BehVw) Set Status=$G(Status,"R;B"_$S($D(RegPar):";A",1:"")) Set Regio=$G(Regio),Type=$G(Type),Groep=$G(Groep),PrGroep=$G(PrGroep),RZTyp=$G(RZTyp),Sort=$G(Sort),IncidentNr=$G(IncidentNr) Set:IncidentNr (StrDate,RegistrUser,RegioVw,BehV,Sort,Regio,Type,Groep,PrGroep,RZTyp,Status)="",Derde=$P(^KlachtD(IncidentNr),D,1,2) Quit ; KLLEV Set X=$$SELECT^KONTAKT("LK","Z") If X=""!$P(X,";",2) Do .S:X="" X=";" .Set Derde=$TR(X,";",D),FP=204 .Write @F,$J("",11) .Do DISPRM^vhScherm("KLLEV") .Set:$P(Derde,D)'="K" (RegioVw,BehVw,Regio)="" .Do DISPVAL^vhScherm("REGIOVW"),DISPVAL^vhScherm("BEHVW"),DISPVAL^vhScherm("REGIO") .Do PUT^vhScherm("INCIDENT","") Quit ; BEHAND(KlachtId,Var) New %SC,R,UserId If $$STATUS(KlachtId)<3 Do .Set R=^KlachtD(KlachtId),UserId=$P(R,D,23) .If 'UserId,'$G(CUserId) New CUserId Do ..Set CUserId=$$DEVUSER^vhUSER($$IO^cQ5) ..Quit:$L(CUserId,";")=1 ..Set CUserId=$$DEVUSER^vhUSER($$IO^cQ5,1) .Do:UserId!$G(CUserId) ..If $D(Var),'$G(Var("AUTO")) Do ...Do EDIT^KLACHT(KlachtId,1) ..Else Do ...Set R=^KlachtD(KlachtId) ...Do:$P(R,D,23,24)=D ....Set $P(R,D,22)=$G(Var("AUTO")),$P(R,D,23)=$S(UserId:UserId,1:CUserId),$P(R,D,24)=$H ....Set ^KlachtD(KlachtId)=R ..Quit:'$G(Var("SELECT")) ..Set R=^KlachtD(KlachtId) ..Set:$P(^HULP(%J,Var("SELECT")),D,50)=KlachtId $P(^HULP(%J,Var("SELECT")),D,1,$L(R,D))=R ..Do LINE^vhLIST(.Var,Var("SELECT")) Quit ; CLOSE(KlachtId,Var) New R,Status If '$G(CUserId) New CUserId Do .Set CUserId=$$DEVUSER^vhUSER($$IO^cQ5) .Quit:$L(CUserId,";")=1 .Set CUserId=$$DEVUSER^vhUSER($$IO^cQ5,1) Do:CUserId .Set Status=$$STATUS(KlachtId) .Quit:Status>2 .If '$G(Var("SELECT")) .Else Set Status=$$CHKCLOSE(KlachtId) .Quit:'Status .If Status,Status<2 Do BEHAND(KlachtId) .Set R=^KlachtD(KlachtId) .Do:$P(R,D,26,27)=D ..Set $P(R,D,25)=$G(Var("AUTO")),$P(R,D,26)=CUserId,$P(R,D,27)=$H ..Set ^KlachtD(KlachtId)=R .Quit:'$G(Var("SELECT")) .Set:$P(^HULP(%J,Var("SELECT")),D,50)=KlachtId $P(^HULP(%J,Var("SELECT")),D,1,$L(R,D))=R .Do LINE^vhLIST(.Var,Var("SELECT")) Quit DELETE(KlachtId) ; New R,Status If '$G(CUserId) New CUserId Do .Set CUserId=$$DEVUSER^vhUSER($$IO^cQ5) .Quit:$L(CUserId,";")=1 .Set CUserId=$$DEVUSER^vhUSER($$IO^cQ5,1) If CUserId,$$ASK^vhWACHTW("MANAGER",,,0) Do .Do DELOBJ^KLACHT(KlachtId) .Do DELETE^vhLISTE(.Opv) Quit RESET(KlachtId,Var) New R,Status If '$G(CUserId) New CUserId Do .Set CUserId=$$DEVUSER^vhUSER($$IO^cQ5) .Quit:$L(CUserId,";")=1 .Set CUserId=$$DEVUSER^vhUSER($$IO^cQ5,1) If CUserId,$$ASK^vhWACHTW("STATUS KLACHT",,,0) Do .Set Status=$$STATUS(KlachtId) .Set R=^KlachtD(KlachtId) .If Status>2 Set $P(R,D,25,28)="\\\" ; Van afgesloten naar in behandeling .Else If Status>1 Set $P(R,D,22,24)="\\" Kill ^KlachtD(KlachtId,"R") ; Van in behandeling naar registratie .Set ^KlachtD(KlachtId)=R .Quit:'$G(Var("SELECT")) .Set:$P(^HULP(%J,Var("SELECT")),D,50)=KlachtId $P(^HULP(%J,Var("SELECT")),D,1,$L(R,D))=R .Do LINE^vhLIST(.Var,Var("SELECT")) Quit ; HIST(KlachtId) New %J,R,OpvTemp,Hist,Input Set KlachtId=$G(KlachtId) If $$ASK^vhWACHTW("MANAGER",,,0) Do .If KlachtId,'$D(^KlachtCD(KlachtId)) Quit .Do STORE^vhTERMINA() .Set %J=$$%J^vhRtn1() .Kill ^HULP(%J) .Merge OpvTemp=Opv .If Opv("SELECT")>($P(Opv("OFFSET"),"`")+1) Do ..Set $P(Opv("OFFSET"),"`")=Opv("SELECT")-1 ..Set R=$P(Opv("POS"),"`"),$P(R,";",3)=$P(R,";"),$P(Opv("POS"),"`")=R ..Set R=$P(Opv("POS"),"`",2),$P(R,";",3)=$P(R,";"),$P(Opv("POS"),"`",2)=R ..Set R=$P(Opv("SET"),"`"),$P(R,";",3)=$P(R,";"),$P(Opv("SET"),"`")=R ..Do WRITE^vhLIST(.Opv) .Do DISABLE^vhLIST(.Opv) .Do FHIST(KlachtId) .Do INIT^vhLIST("KLACHTO","HIST",.Hist) .Do WRITE^vhLIST(.Hist) .For Set Input=$$SCROLL^vhLIST(.Hist) Do Quit:Input="CANC" ..Do:Input="COM" CALL^vhMenu("KLACHTOH") ..Do EXEC^vhMenu("KLACHTOH",.Input) .Merge Opv=OpvTemp .Kill ^HULP(%J) .Do REFRESH^vhTERMINA() Quit ; FHIST(KlachtId) New R,Next,OneKl,Count Set KlachtId=$G(KlachtId),OneKl=''KlachtId,Count=0 Kill ^HULP(%J) For Set:'OneKl KlachtId=$O(^KlachtCD(KlachtId),-1) Quit:KlachtId="" Do Quit:OneKl .Set R=$G(^KlachtD(KlachtId)) .Quit:R="" .Set $P(R,D,50)=KlachtId,Count=Count+1,^HULP(%J,Count)=R .Set Next="" .For Set Next=$O(^KlachtCD(KlachtId,Next),-1) Quit:Next="" Do ..Set R=^KlachtCD(KlachtId,Next) ..Set $P(R,D,50,51)=KlachtId_D_Next,Count=Count+1,^HULP(%J,Count)=R Quit ; NIEUW(Var) New RegPar If $L($P(Derde,D)),$P(Derde,D,2) Set RegPar($S($P(Derde,D)="L":"LEVNR",1:"KLNR"))=$P(Derde,D,2) Do NIEUW^KLACHT(.RegPar) Set RegPar("AUTOSEL")=1 Do SELECT Quit ; EDIT(Var,ModAllFields) New R,KlachtId Set R=^HULP(%J,Var("SELECT")),KlachtId=$P(R,D,50) Do EDIT^KLACHT(KlachtId,,,,$G(ModAllFields)) If $D(^KlachtD(KlachtId)) Do .Set R=^KlachtD(KlachtId),$P(^HULP(%J,Var("SELECT")),D,1,$L(R,D))=R .Do LINE^vhLIST(.Var,Var("SELECT")) Else Do DELETE^vhLISTE(.Var) Quit ; RAADPL(RPL,Copie) New I,R,Input,SubKey,KlachtId,CopieId,OldSel Set Copie=$G(Copie) Do STORE^vhTERMINA() For Do Quit:Input="O" .Set R=^HULP(%J,RPL("SELECT")),KlachtId=$P(R,D,50) Set:Copie CopieId=$P(R,D,51) .Set $P(Keys("B"),"`",5)=1 .Set Input=$$RAADPL^KLACHT(KlachtId,$G(CopieId),1,,,$G(SubKey)) .Set SubKey=$P(Input,D,2),Input=$P(Input,D) .Set R=^KlachtD(KlachtId),$P(^HULP(%J,RPL("SELECT")),D,1,$L(R,D))=R .Do LINE^vhLIST(.RPL,RPL("SELECT")) .Set OldSel=RPL("SELECT") .If Input="P" Do PRINT^KLACHT(KlachtId) .If "()"[Input,$L(Input) Do MOVE^vhLIST(.RPL,$S(Input=")":"DO",1:"UP"),0) Write:RPL("SELECT")=OldSel *7 Do REFRESH^vhTERMINA() Do WRITE^vhLIST(.RPL) Quit ; ; 1 (R) = geregistreerd ; 2 (B) = in behandeling ; 3 (A) = afgehandeld ; 4 (D) = dummy STATUS(KlachtId,CopyId,Vertaald) New R,Status If $G(CopyId),$D(^KlachtCD(KlachtId,CopyId)) Set R=^KlachtCD(KlachtId,CopyId) Else Set R=^KlachtD(KlachtId) If $P(R,D,9)="Dummy" Set Status=4 Else Set Status=''$P(R,D,31)+''$P(R,D,24)+''$P(R,D,27) Set:$G(Vertaald) Status=$P("\R\B\A\D",D,Status+1) Quit Status ; LIST(Optie) New Opv,Print Do STORE^vhTERMINA() Do INIT^vhLISTO("KLACHTO","OPVOLG"_$S($G(Optie)="T":"TRANS",1:""),.Opv) Do PRINT^OUTPUT(.Opv,$G(Optie,"P")) Do REFRESH^vhTERMINA() Quit ; CBPRINT(Ref) New Fmt Set Fmt="" Set:Ref["^HULP" Fmt=";L" Quit Fmt ; CHKCLOSE(KlachtId) New R,Ok,RZTyp,TerugN,NaLev,FCount,Status Set Ok=1,R=^KlachtD(KlachtId),RZTyp=$P(R,D,20) Set TerugN=";"_RZTyp_";"[";TN;",NaLev=";"_RZTyp_";"[";NL;" Set Status=$$FETCHPOP^vhScherm("KLACHT","STATUS",$$STATUS(KlachtId,,1),"O") If 'TerugN,'NaLev Do .Set Ok=$$^vhTXTPOP("KLACHTO","RCLOSE","",KlachtId,Status) Else Do .Set FCount=0 .For I=1:1 Set R=$G(^KlachtD(KlachtId,"R",I)) Quit:R="" Set FCount=FCount+$P(R,"#")="F" Quit:FCount'<(TerugN+NaLev) .If FCount'<(TerugN+NaLev) Set Ok=$$^vhTXTPOP("KLACHTO","RCLOSE","",KlachtId,Status) Quit .Set R=$S(TerugN:"terugname",1:"") .If NaLev Set R=R_$S($L(R):" en ",1:"")_"nalevering" .Set Ok=$$^vhTXTPOP("KLACHTO","FCLOSE","",KlachtId,Status,R) .Set:Ok R=^KlachtD(KlachtId),$P(R,D,28)=1,^KlachtD(KlachtId)=R Quit Ok ; KREADATE New %SC,X Do EDIT^vhScherm("KLACHTOKD",,,,,,3) Quit ; RegioVW(VerantW) New I,R,RubrPos,zb,Users,UserId,OVUsers,Vertegenw,KSBelgie,KSNederland Set OVUsers=$$USERID^vhUSER("EIGENKLAS"),Vertegenw=$$USERID^vhUSER("VTW") Set KSBelgie=$$USERID^vhUSER("KSBE"),KSNederland=$$USERID^vhUSER("KSNL") Set Users=";"_OVUsers_";&S;DIV`DIV" Do:$L(Vertegenw) . Set Users=Users_";&S" . For I=1:1:$L(Vertegenw,";") Set:Users_";"'[(";"_$P(Vertegenw,";",I)_";") Users=Users_";"_$P(Vertegenw,";",I) Do:$L(KSBelgie) . Set Users=Users_";&S" . For I=1:1:$L(KSBelgie,";") Set:Users_";"'[(";"_$P(KSBelgie,";",I)_";") Users=Users_";"_$P(KSBelgie,";",I) Do:$L(KSNederland) . Set Users=Users_";&S" . For I=1:1:$L(KSNederland,";") Set:Users_";"'[(";"_$P(KSNederland,";",I)_";") Users=Users_";"_$P(KSNederland,";",I) Set $E(Users)="" For I=1:1 Set UserId=$P(Users,";") Quit:UserId="" Do .Set Users=$P(Users,";",2,999) .Set Users(I)=UserId Set:UserId Users(I)=Users(I)_"`"_$P(^vhUSER("D",UserId),D,2) Set RubrPos=$$POS^vhScherm("REGIOVW") Set VerantW=$$WILD^vhPOPUP($P(RubrPos,D,2),"ZO1-","Verantwoordelijke",.Users,VerantW,,"") Quit VerantW ; CHKFILE If '$D(Q) Set Q="SYS" Do ^cA604 New R,KlachtId,RefGroep,Next,ObjType,ObjRef,Verouderd Write !,"*** KlachtD ***" Set KlachtId="" For Set KlachtId=$O(^KlachtD(KlachtId)) Quit:KlachtId="" Do . For RefGroep="B","R" Do . . Set Next="" . . For Set Next=$O(^KlachtD(KlachtId,RefGroep,Next)) Quit:Next="" Do . . . Set R=^KlachtD(KlachtId,RefGroep,Next),ObjType=$P(R,"#"),ObjRef=$P(R,"#",2),Verouderd=$P(R,"#",5) . . . Quit:Verouderd Quit:$G(^KlachtI(ObjType,ObjRef,KlachtId))=RefGroep . . . Write !,$ZR Write !!,"*** KlachtI ***" Set ObjType="" For Set ObjType=$O(^KlachtI(ObjType)) Quit:ObjType="" Do . Set ObjRef="" . For Set ObjRef=$O(^KlachtI(ObjType,ObjRef)) Quit:ObjRef="" Do . . Set KlachtId="" . . For Set KlachtId=$O(^KlachtI(ObjType,ObjRef,KlachtId)) Quit:KlachtId="" Do . . . If ObjType'="K",ObjType'="L" Do . . . . Set RefGroep=^KlachtI(ObjType,ObjRef,KlachtId),ZR=$ZR,Next="" . . . . For Set Next=$O(^KlachtD(KlachtId,RefGroep,Next)) Quit:Next="" Do If ObjType=$P(R,"#"),ObjRef=$P(R,"#",2) Quit . . . . . Set R=^KlachtD(KlachtId,RefGroep,Next) . . . . Quit:Next . . . . Write !,ZR . . . Else Do . . . . Set R=^KlachtD(KlachtId) . . . . If $P(R,D)=ObjType,$P(R,D,2)=ObjRef Quit . . . . Write !,$ZR Quit ; BarometerWaarde(KLNr) New I,R,KlachtNr,Regio,Parameter,Value,FromDate,RegDate,Periode Set Parameter="",Regio=$P(^KKL(^KK1(KLNr),0),D,20) Set:Regio Parameter=$p(^RES("KLANT","PI","REGIO","D",Regio),"`",16) Set:Parameter="" Parameter=$$GETALG^DEFAULTS("KLACHT","BAROMETER") ; Defaultwaarde Set FromDate=+$H For I=1:1:$L(Parameter,"#") Do . Set R=$P(Parameter,"#",I),Periode=$P(R,";",2) . Set Parameter(I)=$P(R,";")_D_($$CALCDATE^vhDTyp(,"M",-Periode)+1)_D_$P(R,";",3) . Set:FromDate>$P(Parameter(I),D,2) FromDate=$P(Parameter(I),D,2) ; Verzamelen van de klachten Set KlachtNr="" For Set KlachtNr=$O(^KlachtI("K",KLNr,KlachtNr),-1) Quit:KlachtNr="" Do Quit:RegDate1 Write @F,"SNM! : ",$P("\Oranje\ROOD",D,Value) Quit ; KlachtCount(KLNr,lbParameters) New I,R,KlachtNr,Regio,Value,RegDate,KwartaalFrom,KwartaalTo,KwartaalStatus,JaarFrom,JaarTo,JaarStatus,Status Set lbParameters=$G(lbParameters) Do:'$LL(lbParameters) ; De parameters zijn niet meegegeven . Set Regio=$P(^KKL(^KK1(KLNr),0),D,20) . Set:Regio lbParameters=$P(^RES("KLANT","PI","REGIO","D",Regio),"`",17) . Set:'$LL(lbParameters) lbParameters=$$DefaultPar() ; Defaultwaarde Set KwartaalFrom=$LI($LI(lbParameters)),KwartaalTo=$LI($LI(lbParameters),2),KwartaalStatus=$LI($LI(lbParameters),3) Set JaarFrom=$LI($LI(lbParameters,2)),JaarTo=$LI($LI(lbParameters,2),2),JaarStatus=$LI($LI(lbParameters,2),3) ; Verzamelen van de klachten Set KlachtNr="",Value=0 For Set KlachtNr=$O(^KlachtI("K",KLNr,KlachtNr),-1) Quit:KlachtNr="" Do If RegDateKwartaalTo,$L(Status),KwartaalStatus[Status Set Value=Value+1 . If RegDate'JaarTo,$L(Status),JaarStatus[Status Set Value=Value+1 Quit Value ; DisplayKlachtCount(KLNr,Lijn,Colom) New Value Set Value=$$KlachtCount(KLNr),FP=Lijn*100+Colom Write @F,$J("",13) Write:Value @F,"Incident : ",Value Quit ; ; Van het laatste kwartaal -> alle (Status A, B, R) ; Van het laatste jaar (excl. laatste kwartaal) -> alle Status = B,R ; $LB( $LB('Huidige dag min 3 mnd','Huidige dag','Status A+B+R') , $LB('Huidige dag min 12 mnd','Huidige dag min 3 mnd','Status B+R') ) DefaultPar() New lbDefaultPar,FromDate,ToDate Set FromDate=$$EXTDATE^vhDTyp($$CALCDATE^vhDTyp(,"M",-3)) Set $P(FromDate,"-")=DD Set FromDate=$$INTDATE^vhDTyp(FromDate),lbDefaultPar=$LB(FromDate,($H-1),"ABR") Set ToDate=FromDate-1,FromDate=$$EXTDATE^vhDTyp($$CALCDATE^vhDTyp(,"M",-12)) Set $P(FromDate,"-")=DD Set FromDate=$$INTDATE^vhDTyp(FromDate),lbDefaultPar=$LB(lbDefaultPar)_$LB($LB(FromDate,ToDate,"BR")) Quit lbDefaultPar ; ; Pre edit van de rubriek 'Incident' PreEditIncident New KLNr Set KLNr="" Set:$P($G(RegPar("VIA")),D)="K" KLNr=$P(RegPar("VIA"),D,2) Set sEr=-1,X=$$SELECT^KLACHTS($S(KLNr:"K",1:""),KLNr,,,"1LKN-") If X,X'=IncidentNr Do . Set IncidentNr=X . Do PUTLIST^vhScherm("KLLEV",$P(^KlachtD(X),D,1,2)) . Set (FromDate,ToDate)="" . Do DISPVAL^vhScherm("KREADATE") . Do PUTLIST^vhScherm("STRDATE;REGISTR;REGIOVW;BEHVW;SORT;REGIO;TYPE;GROEP;PRGROEP;RZTYP;STATUS","") Quit