PROGRAM LOGFIL C C C PURPOSE: TO MANIPULATE THE ACCOUNT FILE "[7,237]LOGLOGLOG.LOG". C C OPTIONS AVAILABLE: - Create a new account file. C - Add an account and/or projects. C - Delete an account and/or projects. C - Save the current totals and reset them to 0. C - List all or part of the information. C C LOGICAL*1 BYT INCLUDE 'LOGHDR.ADM' INCLUDE 'LOGVBL.ADM' INCLUDE 'LOGPR1.ADM' INCLUDE 'LOGPR2.ADM' C C WAIT FOR ACCESS TO FILE C CALL WFR56 C C ASK OPERATOR WHAT TO DO. OTHERS MAY HAVE ACCESS TO ACCOUNT C FILE NOW ("CLR56"), FOR OPERATOR COULD HAVE A COFFEE BREAK. C 5 CLOSE(UNIT=1) CALL CLR56 WRITE(6,10) 10 FORMAT(/'$[C]reate,[A]dd,[D]elete,[L]ist,[R]eset,[E]xit: ') READ(5,20,END=1000) BYT 20 FORMAT(A1) C C OPERATOR ANSWERED, SO WAIT FOR ACCESS TO FILE AGAIN. C CALL WFR56 IF(BYT.EQ.'E') GO TO 1000 IF(BYT.NE.'C') GO TO 100 C C CREATE C OPEN(UNIT=1,NAME='DM:[7,237]LOGLOGLOG.LOG',ACCESS='DIRECT', $TYPE='NEW',RECORDSIZE=128,INITIALSIZE=6,ERR=1000) CALL CRELOG(IER) IF(IER.LT.0) GO TO 1000 GO TO 5 C C ADD ACCOUNTS AND/OR PROJECTS C 100 OPEN(UNIT=1,NAME='DM:[7,237]LOGLOGLOG.LOG',ACCESS='DIRECT', $TYPE='OLD',RECORDSIZE=128,ERR=1000) READ(1'1,END=1000,ERR=1000) IBFHDR IF(BYT.NE.'A') GO TO 200 CALL ADDLOG(IER) IF(IER.LT.0) GO TO 1000 GO TO 5 C C DELETE ACCOUNTS AND/OR PROJECTS C 200 IF(BYT.NE.'D') GO TO 300 CALL DELLOG(IER) IF(IER.LT.0) GO TO 1000 GO TO 5 C C SAVE CURRENT TOTALS AND RESET THEM TO 0 C 300 IF(BYT.NE.'R') GO TO 400 CALL RSTLOG(IER) IF(IER.LT.0) GO TO 1000 GO TO 5 C C LIST ALL OR PART OF INFORMATION FROM ACCOUNT FILE C 400 IF(BYT.NE.'L') GO TO 5 CALL LSTLOG(IER) IF(IER.GE.0) GO TO 5 C C EXIT PROGRAM C 1000 CALL CLR56 STOP END