I added some FILE EQUATIONS to make the command consistent.
Someone also mentioned the possibility that an orphaned
group could have some "stuff" in it. So I added a check
to see if the file space of the orphaned group is listed
has having " 0" sectors in the REPORT output.
Note I could have used TEMP files but wanted
a record of what I did.
The following is my final result, be careful of word wrap:
PARM volset="" account=""
OPTION NOLIST
IF "!volset" <> "" AND "!account" <> "" AND "!volset" <> "MPEXL_SYSTEM_VOLUME_SET"
IF FINFO('NOVOL1','EXISTS')
YESPURGE NOVOL1
ENDIF
BUILD NOVOL1;REC=-80,,F,ASCII;DISC=100000
IF FINFO('NOVOL2','EXISTS')
YESPURGE NOVOL2
ENDIF
BUILD NOVOL2;REC=-80,,F,ASCII;DISC=100000
IF FINFO('TOPURGE','EXISTS')
YESPURGE TOPURGE
ENDIF
BUILD TOPURGE;REC=-80,,F,ASCII;DISC=100000
FILE NOVOL1=NOVOL1,OLD
FILE NOVOL2=NOVOL2,OLD
FILE TOPURGE=TOPURGE,OLD
FILTER "REPORT @.!account;ONVS=!volset", "/" AND NOT &
"COUNT LIMIT COUNT LIMIT COUNT LIMIT";OUT=*NOVOL1,OLD
FILTER "REPORT @.!account", "/" AND NOT &
"COUNT LIMIT COUNT LIMIT COUNT LIMIT";OUT=*NOVOL2,OLD
LISTF NOVOL@,2
ALTFILE NOVOL@;FLIMIT=EOF
SETVAR NOVOL1 VEFOPEN('NOVOL1,OLD;ACC=IN')
SETVAR TOPURGE VEFOPEN('TOPURGE,OLD;ACC=INOUT')
SETVAR PURGEGROUP VEFWRITE(!TOPURGE,"!!JOB PURGEGRP,MANAGER.SYS;OUTCLASS=,1")
REPEAT
SETVAR PRIVGROUP VEFREAD(!NOVOL1)
SETVAR PRIVSTRING STR("!PRIVGROUP",5,8)
SETVAR NOSECTORS STR("!PRIVGROUP",13,9)
SETVAR FOUNDFLAG1 FALSE
SETVAR NOVOL2 VEFOPEN('NOVOL2,OLD;ACC=IN')
REPEAT
SETVAR MPEXGROUP VEFREAD(!NOVOL2)
SETVAR MPEXSTRING STR("!MPEXGROUP",5,8)
IF "!PRIVSTRING" = "!MPEXSTRING"
SETVAR FOUNDFLAG1 TRUE
ENDIF
FORRECS NOVOL2REC=NOVOL2,OLD
SETVAR NOVOL2 VEFCLOSE(!NOVOL2)
IF FOUNDFLAG1=FALSE AND NOSECTORS = " 0"
SETVAR PURGEGROUP VEFWRITE(!TOPURGE,"!!PURGEGROUP !PRIVSTRING.!account;ONVS=!volset")
ENDIF
FORRECS NOVOL1REC=NOVOL1,OLD
SETVAR NOVOL1 VEFCLOSE(!NOVOL1)
SETVAR PURGEGROUP VEFWRITE(!TOPURGE,"!!EOJ")
SETVAR TOPURGE VEFCLOSE(!TOPURGE)
ALTFILE TOPURGE;FLIMIT=EOF
STREAM TOPURGE
ELSE
ECHO **** Volume Set and or Account not Entered ****
ECHO ***** Or MPEXL_SYSTEM_VOLUME_SET Entered ******
ENDIF
Tracy M. Johnson
TRW Automotive Electronics
|