ATKSTAT ; Afstand-toegang voor klanten [ 05/31/2002 9:37 AM ] ; Do INIT Write @F11,@F1 Do DISPLAY^vhScherm("ATKSTAT"),VERWERK For Do FIELD^vhScherm("ATKSTAT","FROMDATE") Quit:FromDate=56979 Do VERWERK Quit ; INIT Do INIT^vhTERMINA Set FromDate=$$CALCDATE^vhLib.DataTypes($H,"M","FD"),ToDate=+$H Quit ; VERWERK Do DISPLAY^vhScherm("ATKSTAT") Kill Klanten Set (Klanten,ALogOn,MaxTime,TotTime)=0,MinTime=99999 Do FETCH(FromDate,ToDate) Set GemTime=$S(ALogOn:TotTime\ALogOn,1:0) Do DISPLAY^vhScherm("ATKSTATD") Quit ; FETCH(FromDate,ToDate) New I1,I2,I3,KLNr,User,OnTime,OffTime,Time,Count,KNoList,UNoList Set FromDate=FromDate-1 For Set FromDate=$O(^ATK("L",FromDate)) Quit:'FromDate Quit:FromDate>ToDate Do .Set KLNr="" .For Set KLNr=$O(^ATK("L",FromDate,KLNr)) Quit:'KLNr Do ..Set KNoList=$G(^ATK(KLNr,0,"L")),User="" ..For Set User=$O(^ATK("L",FromDate,KLNr,User)) Quit:User="" Do ...Set UNoList=$G(^ATK(KLNr,User,"L")) ...Set:'$L(UNoList) UNoList=KNoList ...Quit:UNoList ...Set (LogTime,LogOn,LogOff,OnTime,OffTime)="" ...For Set LogTime=$O(^ATK("L",FromDate,KLNr,User,LogTime)) Quit:'LogTime Do ....Set R=^ATK("L",FromDate,KLNr,User,LogTime) ....If R Do .....Set LogOn=R,Screens="" .....If LogOff="" Set OnTime=LogTime .....Else Do ......Set LogOff="" ....Else Do .....Set (LogOff,Screens)=R .....If LogOn="" Set OnTime="?" .....Set OffTime=LogTime ....If OnTime,OffTime Do .....Do CALC(FromDate,KLNr,OnTime,OffTime,Screens) .....Set (LogOn,LogOff,OnTime,OffTime)="" ...If OnTime!OffTime Do ....Set:'OnTime OnTime="?" Set:'OffTime OffTime="?" ....Do CALC(FromDate,KLNr,OnTime,OffTime,Screens) Quit ; CALC(FromDate,KLNr,OnTime,OffTime,Screens) New R,I1,I2,I3,DiffTime Set DiffTime="?" If OnTime,OffTime Set DiffTime=OffTime-OnTime If DiffTime Do .Set:DiffTimeMaxTime MaxTime=DiffTime .Set TotTime=TotTime+DiffTime .Set ALogOn=ALogOn+1 Set:'$D(Klanten(KLNr)) Klanten=Klanten+1,Klanten(KLNr)=$G(Klanten(KLNr))+1 Set Screens=$TR(Screens,D,";") Quit ; DAY(Day) New (Day) Set Day=$G(Day) Do .New Day .Do INIT Write @F11,@F1 Set Day=$$INTDATE^vhLib.DataTypes(Day) Set:'Day Day=$H Set (FromDate,ToDate)=Day Do VERWERK Quit ; WEEK(Week) New (Week) Set Week=$G(Week) Do .New Week .Do INIT Write @F11,@F1 Set Week=$$INTDATE^vhLib.DataTypes(Week,"DW") Set:'Week Week=$H Set FromDate=$$CALCDATE^vhLib.DataTypes(Week,"W","FD"),ToDate=$$CALCDATE^vhLib.DataTypes(Week,"W","LD") Do VERWERK Quit ; MONTH(Month) New (Month) Set Month=$G(Month) Do .New Month .Do INIT Write !,Month r r Write @F11,@F1 Set Month=$$INTDATE^vhLib.DataTypes(Month,"DM") Set:'Month Month=$H Set FromDate=$$CALCDATE^vhLib.DataTypes(Month,"M","FD"),ToDate=$$CALCDATE^vhLib.DataTypes(Month,"M","LD") Write !,FromDate,!,ToDate r r Do VERWERK Quit ; YEAR(Year) New (Year) Set Year=$G(Year) Do .New Year .Do INIT Write @F11,@F1 Set Year=$$INTDATE^vhLib.DataTypes(Year) Set:'Year Year=$H Set FromDate=$$CALCDATE^vhLib.DataTypes(Year,"J","FD"),ToDate=$$CALCDATE^vhLib.DataTypes(Year,"J","LD") Do VERWERK Quit ;