_SUBROUTINE ADMIN.OBJ USAGE.SUB * * * * * * _INCLUDE ADMIN.COMMON * _FILE USAGE.FD WWW.LOG,USAGE * LOOP S.DATE = PL_DATE() S.TIME = PL_TIME() PRINT 'S.TIME = ' : S.TIME PRINT 'S.DATE = ' : S.DATE _PAGE USAGE.HTM * IF EXIT THEN _RETURN END NW = S.DATE * 86400 + S.TIME XX0 = '' XX1 = '' LAST.ID = '' * BEGIN CASE CASE B.10SEC * T1 = INT( NW / 10 ) * 10 - ( 60 * 10 ) + 10 DT1 = INT(T1/86400) TM1 = MOD(T1,86400) * FOR I = 0 TO 59 T = T1 + ( I * 10 ) DT = INT(T/86400) TM = MOD(T,86400) ID = DT : '*' : OCONV(TM,'MT') IF ID <> LAST.ID THEN READ D FROM USAGE.FD , ID ELSE D = '' LAST.ID = ID END SEC = MOD(TM,60) XX0 = D<1,(SEC/10)+1> XX1 = D<2,(SEC/10)+1> NEXT I * TD = 10 ; TW = 8 ; GOSUB 100 * TITLE1 = '10 Minute activity starting ' : OCONV(DT1,'D4/') : ' ' : OCONV(TM1,'MTS') UNIT1 = '10 seconds' * * CASE B.MIN * T1 = INT( NW / 60 ) * 60 - ( 60 * 60 ) + 60 DT1 = INT(T1/86400) TM1 = MOD(T1,86400) * FOR I = 0 TO 59 T = T1 + ( I * 60 ) DT = INT(T/86400) TM = MOD(T,86400) H = FIELD(OCONV(TM,'MT'),':',1) ID = DT : '*' : H IF ID <> LAST.ID THEN READ D FROM USAGE.FD , ID ELSE D = '' LAST.ID = ID END MN = MOD(INT(TM/60),60) + 1 XX0 = D<1,MN> XX1 = D<2,MN> NEXT I * TD = 60 ; TW = 8 ; GOSUB 100 * TITLE1 = '1 Hour activity starting ' : OCONV(DT1,'D4/') : ' ' : OCONV(TM1,'MTS') UNIT1 = 'minute' * * CASE B.HR * T1 = INT( NW / 3600 ) * 3600 - ( 2 * 86400 ) + 3600 DT1 = INT(T1/86400) TM1 = MOD(T1,86400) * FOR I = 0 TO 47 T = T1 + ( I * 3600 ) DT = INT(T/86400) TM = MOD(T,86400) ID = DT IF ID <> LAST.ID THEN READ D FROM USAGE.FD , ID ELSE D = '' LAST.ID = ID END HR = MOD(INT(TM/3600),3600) + 1 XX0 = D<1,HR> XX1 = D<2,HR> NEXT I * TD = 3600 ; TW = 10 ; GOSUB 100 * TITLE1 = '2 Day activity starting ' : OCONV(DT1,'D4/') : ' ' : OCONV(TM1,'MTS') UNIT1 = 'hour' * * CASE B.1WK * T1 = INT( NW / 3600 ) * 3600 - ( 7 * 86400 ) + 3600 DT1 = INT(T1/86400) TM1 = MOD(T1,86400) * FOR I = 0 TO ( 7 * 24 ) T = T1 + ( I * 3600 ) DT = INT(T/86400) TM = MOD(T,86400) ID = DT IF ID <> LAST.ID THEN READ D FROM USAGE.FD , ID ELSE D = '' LAST.ID = ID END HR = MOD(INT(TM/3600),3600) + 1 XX0
= XX0
+ D<1,HR> XX1
= XX1
+ D<2,HR> NEXT I * FOR I = 1 TO 24 XX0 = INT((XX0+3.5)/7) XX1 = INT((XX1+3.5)/7) NEXT I * TD = 'HOURS' ; TW = 20 ; GOSUB 100 * TITLE1 = '1 Week activity starting ' : OCONV(DT1,'D4/') : ' ' : OCONV(TM1,'MTS') UNIT1 = 'hour' * * CASE B.4WK * T1 = INT( NW / 3600 ) * 3600 - ( 28 * 86400 ) + 3600 DT1 = INT(T1/86400) TM1 = MOD(T1,86400) * FOR I = 0 TO ( 28 * 24 ) T = T1 + ( I * 3600 ) DT = INT(T/86400) TM = MOD(T,86400) ID = DT IF ID <> LAST.ID THEN READ D FROM USAGE.FD , ID ELSE D = '' LAST.ID = ID END HR = MOD(INT(TM/3600),3600) + 1 XX0
= XX0
+ D<1,HR> XX1
= XX1
+ D<2,HR> NEXT I * FOR I = 1 TO 24 XX0 = INT((XX0+14)/7) XX1 = INT((XX1+14)/7) NEXT I * TD = 'HOURS' ; TW = 20 ; GOSUB 100 * TITLE1 = '4 Week activity starting ' : OCONV(DT1,'D4/') : ' ' : OCONV(TM1,'MTS') UNIT1 = 'hour' * * CASE B.DAYS * T1 = INT( NW / 3600 ) * 3600 - ( 28 * 86400 ) + 3600 DT1 = INT(T1/86400) TM1 = MOD(T1,86400) * FOR I = 0 TO ( 28 * 24 ) T = T1 + ( I * 3600 ) DT = INT(T/86400) DAY = MOD(DT,7) + 1 TM = MOD(T,86400) ID = DT IF ID <> LAST.ID THEN READ D FROM USAGE.FD , ID ELSE D = '' LAST.ID = ID END HR = MOD(INT(TM/3600),3600) + 1 XX0 = XX0 + D<1,HR> XX1 = XX1 + D<2,HR> NEXT I * FOR I = 1 TO 7 XX0 = INT((XX0+2)/4) XX1 = INT((XX1+2)/4) NEXT I * TD = 'DAYS' ; TW = 40 ; GOSUB 100 * TITLE1 = '4 Week activity starting ' : OCONV(DT1,'D4/') : ' ' : OCONV(TM1,'MTS') UNIT1 = 'day' * * END CASE * _PAGE USAGEREPORT.HTM WHILE 1 DO REPEAT * _RETURN * _PAGE DUMMYBARS.HTM * 100 REM Call three routines * CALL PLH.USAGE.CAPTIONS(TD,T1,CC) CALL PLH.USAGE.TABLE(TW,XX0,CC,TBL1) CALL PLH.USAGE.TABLE(TW,XX1,CC,TBL2) * RETURN