C MONTHLY ACCOUNT SUMMARY C C MOD. JAN 83 TO CUMULATE GROUPS C COMMON /SC/ USRNAM,FILL1,UIC,FILL2,HOWMCH BYTE USRNAM(12),FILL1(6),UIC(9),FILL2(25) BYTE USROUT(12,50) BYTE UICOUT(9,50) REAL HOWOUT(50) BYTE DATEB(9) INTEGER GPLIM(2,7) BYTE GPNAME(21,7) REAL GPUSE(7) DATA GPLIM /"0,"37, 1 "40,"77, 1 "100,"137, 1 "140,"177, 1 "200,"237, 1 "240,"277, 1 "300,"377/ DATA ngroup /7/ DATA GPNAME /'S','y','s','t','e','m',15*' ', 1 'E','r','r','o','r',' ','-',' ','u','n','u','s','e','d',7*' ', 1 'O','f','f','i','c','e',15*' ', 1 'M','a','s','s',' ', 2 's','p','e','c','t','r','o','m','e','t','r','y',4*' ', 1 'H','C','P',' ','l','a','b',',',' ', 2 'h','y','p','e','r','t','e','n','s','i','o','n', 1 'O','t','h','e','r',16*' ', 1 'E','r','r','o','r',':',' ','D','E','C','U','S',' ', 2 'e','t','c','.',4*' '/ C CALL DATE (DATEB) C OPEN PDSUPF.DAT CALL SINIT J = 1 HSUM = 0.0 DO (I=1,ngroup) GPUSE(I) = 0.0 REPEAT UNTIL (USRNAM(1).EQ.'?') CALL S DO (I=1,12) USROUT(I,J) = USRNAM(I) DO (I=1,9) UICOUT(I,J) = UIC(I) HOWOUT(J) = HOWMCH * 1.0E-6 HSUM = HSUM+HOWOUT(J) ACCUMULATE-GROUP-STATISTICS J = J+1 FIN C CALL ASSIGN(1,'LB0:[1,100]WHODID.LST') WRITE (1,1) DATEB 1 FORMAT (30X,'SYSTEM USAGE REPORT'/35X,9A1// 15X,' USER ',6X,' UIC ',12X,'USE',16X,'%'/) DO (K=1,J-2) WRITE (1,2) (USROUT(I,K),I=1,12), (UICOUT(I,K),I=1,9), HOWOUT(K), 1 100.0*HOWOUT(K)/HSUM 2 FORMAT (5X,12A1,6X,9A1,6X,F12.6,6X,F12.3) FIN WRITE (1,3) HSUM 3 FORMAT (/5X,'TOTAL',28X,F12.6) REPORT-GROUP-STATISTICS CALL EXIT TO ACCUMULATE-GROUP-STATISTICS DECODE (4,5,UIC) IGROUP 5 FORMAT (1X,O3) JGP = 1 WHILE (JGP.LE.ngroup .AND. IGROUP.GT.GPLIM(2,JGP)) JGP = JGP+1 D WRITE (5,9901) UIC,IGROUP,JGP,(GPLIM(I,JGP),I=1,2) D9901 FORMAT (' UIC: ',9A1,' IGROUP',O4,' JGP',I4,' GPLIM',2O4) IF (JGP.LE.ngroup .AND. IGROUP.GE.GPLIM(1,JGP)) GPUSE(JGP) = GPUSE(JGP) + HOWOUT(J) D WRITE (5,9902) GPUSE(JGP) D9902 FORMAT (' GPUSE(JGP)',F12.6) FIN FIN C TO REPORT-GROUP-STATISTICS WRITE (1,10) 10 FORMAT (////30X,'USAGE BY USER GROUPS'// 1 10X,'ACTIVITY',T31,'GROUP UIC RANGE',T55,'USE',T77,'%'/) DO (JGP = 1,ngroup) IF (GPUSE(JGP) .GT.0.0) WRITE (1,11) (GPNAME(J,JGP),J=1,21),GPLIM(1,JGP),GPLIM(2,JGP), 1 GPUSE(JGP),100.0*GPUSE(JGP)/HSUM 11 FORMAT (5X,21A1,6X,O4,' to',O4,6X,F12.6,6X,F12.3) FIN FIN FIN END