10 ON ERROR GOTO ERR_ROUTINE ! ! ! File: Sys$SysDevice:[DiskQuota]BigUsers.bas ! ! Author: Paul Lind ! ! Latest Change: 26-OCT-1984 ! ! ! ! ! ! ! ! ! ! ! ! DECLARE STRING & Format_Line, & InFile, & OutFile, & NodeList, & Comment, & Node, & This_Line, & User, & Quota DECLARE INTEGER & Cnt, & Nm DECLARE LONG & QuotaVal, & Def_Quota DECLARE BYTE & Flag NodeList = 'Sys$SysDevice:[DiskQuota]NodeList.txt' InFile = 'Sys$SysDevice:[DiskQuota]Checklist.txt' OutFile = 'Sys$SysDevice:[DiskQuota]BigUsers.Lis' Def_Quota = 3000 Format_Line = "'LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL " + & "'RRRRRRR 'LLLLLLLLLLLLLLLLLL" OPEN NodeList AS File #1% OPEN OutFile FOR OUTPUT AS File #3%, RECORDSIZE 132 Flag = 1% 100 WHILE FLAG Node = "!" WHILE Node = "" OR LEFT$(Node, 1%) = "!" LINPUT #1,Node Node = EDIT$(Node,6%) NEXT Cnt = 1% 200 OPEN Node + '::' + InFile FOR INPUT AS File #2% PRINT '' PRINT 'Now Reading ';Node;'::';InFile PRINT #3;'' PRINT #3 USING " 'CCCCCCCCCCCCCCCC"; & EDIT$(Node,32%) While Flag LINPUT #2%,This_Line This_Line = EDIT$(This_Line,6%) IF LEFT$(This_Line, 1%) <> '!' THEN User = This_Line LINPUT #2%,Quota QuotaVal = VAL(Quota) IF QuotaVal > Def_Quota AND & EDIT$(LEFT$(User,9%),32%) <> 'TECH$DISK' THEN PRINT USING Format_Line;User;Quota;Node PRINT #3% USING Format_Line;User;Quota;Node END IF END IF NEXT 300 CLOSE #2% NEXT GOTO 32700 ERR_Routine: SELECT ERR CASE = 252 Cnt = Cnt + 1% PRINT 'ACP ERROR' RESUME 200 IF Cnt < 5% AND ERL = 200 RESUME 32700 CASE = 11 RESUME 300 IF ERL = 200 RESUME 32700 CASE ELSE PRINT BEL;BEL;'UNEXPECTED ERROR #';ERR PRINT ERT$(ERR) RESUME 32700 END SELECT 32700 END