PROC 1 MEMBER DEBUG NB SUMMARY - DS1(SYS1.PROD.FONTLIB) + DS2(SYS1.PROD.FONT3820) + DS3(SYS1.PROD.FONT300) + DS4(SYS1.FONTLIB) + DS5(SYS1.FONTLIBB) + DS6(DUVTT.V1R1M0.FONT300) + DS7(SYS1.PROD.PSEGLIB) + DS8(SYS1.PSEGLIB) + DS9(SYS1.PROD.OVERLIB) + DS10(SYS1.OVERLIB) + DS11(SYS1.PROD.PDEFLIB) + DS12(SYS1.PDEFLIB) + DS13(SYS1.PROD.FDEFLIB) + DS14(SYS1.FDEFLIB) + DS15(SYS1.IMAGELIB) + DS16(SYS1.AIMAGE) /* DATASETS BASED ON CONTENT OF SYS1.PROCLIB(APSWPROC) 1990/05/25 D.MCR /* + SYS1.FONTLIB AND SYS1.PSEGLIB + .IMAGELIB + .AIMAGE /* ******************************************************** /* PURPOSE: BROWSE A AFP OR OTHER RELATED PRINT MEMBERS /* SUPPLIED BY DAVID MCRITCHIE AHC 1985/07/10 /* ******************************************************** CONTROL MAIN SET MULTIMEM = &SYSINDEX(&STR(*),&STR(&MEMBER.)) IF &MULTIMEM = 0 THEN - SET MULTIMEM = &SYSINDEX(&STR(%),&STR(&MEMBER.)) SET L = &LENGTH(&STR(&MEMBER.)) IF &L. > 8 THEN DO SET INVAL = &STR(INVALID MEMBERNAME LENGTH('&MEMBER.') EXCEEDS 8) WRITE &INVAL. SET &ZEDSMSG = &STR(MEMBERNAME) SET &ZEDLMSG = &STR(&INVAL.) ISPEXEC SETMSG MSG(ISRZ000) EXIT CODE(12) END ISPEXEC CONTROL DISPLAY LINE IF CHKCAT = &SYSCAPS(&CHKCAT.) + | CHKCAT = &SYSCAPS(&STR(&MEMBER.)) THEN DO SET CHKCAT = CHKCAT SET MEMBER = &STR(........) SET SUMMARY = &STR() SET ALL = ALL /* MIGHT AS WELL CHECK EVERYTHING */ END SET BLANKS = &STR( ) SET BLANKS = &STR(&BLANKS.&BLANKS.&BLANKS.) SET XCNT = 0 SET N = 1 SET DS = &&DS&N.. SET NC = &SYSCAPS(&NC) IF &NC = NC THEN SET SUMMARY = SUMMARY SET SUMMARY = &SYSCAPS(&SUMMARY) IF &SUMMARY = SUMMARY THEN DO WRITE WRITE SUMMARY FROM ===> TSO AFP &MEMBER &NB &SUMMARY WRITE END SET AVAIL = 0 DO WHILE &STR(&DS) ^= SET AVAIL = &AVAIL. + 1 IF CHKCAT = &SYSCAPS(&CHKCAT.) THEN DO /* CONTROL NOLIST NOCONLIST NOSYMLIST MSG /* SYSOUT TRAPS WILL NOT WORK IF YOU USE LIST SET SYSOUTTRAP = 100 SET SYSOUTLINE7 = + &STR(.....................................) LISTCAT ENT('&DS.') VOL SET NS = &SYSOUTLINE SET I = 1 DO WHILE &I <= &NS SET X = &STR(&&SYSOUTLINE&I..) SET X = &STR(&X.) SET I = &I. + 1 END WRITE &SUBSTR(26:31,&SYSOUTLINE7.&BLANKS.) + &SUBSTR(16:60,&SYSOUTLINE1.&BLANKS.) GOTO AGAIN END /* OF CHKCAT *******/ IF &MULTIMEM. = 0 + THEN SET GOODBAD = &STR(&SYSDSN('&DS.(&MEMBER.)') ELSE SET GOODBAD = &STR(&SYSDSN('&DS.') IF &SUMMARY = SUMMARY THEN DO WRITE '&DS.(&MEMBER.)' -- &STR(&GOODBAD.). IF &STR(&GOODBAD.) = OK THEN - SET XCNT = &XCNT. + 1 END ELSE DO IF &STR(&GOODBAD.) = OK THEN DO IF &MULTIMEM ^= 0 THEN ISPEXEC CONTROL ERRORS RETURN ISPEXEC BROWSE DATASET('&DS.(&MEMBER.)') IF &LASTCC. = 0 THEN SET XCNT = &XCNT. + 1 END ELSE DO IF &DEBUG. = DEBUG THEN DO WRITE '&DS.(&MEMBER.)' -- &STR(&GOODBAD.). END ELSE DO IF &STR(&GOODBAD.) ^= &STR(MEMBER NOT FOUND) + THEN - WRITE '&DS.(&MEMBER.)' -- &STR(&GOODBAD.). END END END AGAIN: + SET N = &N. + 1 SET DS = &&DS&N.. END IF CHKCAT = &CHKCAT. THEN RETURN CODE(0) IF &MULTIMEM. ^= 0 THEN DO WRITE PATTERN MEMBER=&MEMBER. WAS FOUND IN &XCNT. OF THE + &AVAIL. AFP LIBRARIES PRESENTED EXIT CODE(0) END %CST806 &MEMBER SET CC = &LASTCC IF &CC = 0 THEN DO IF &XCNT. = 0 THEN DO WRITE &MEMBER EXISTS IN A LOAD LIBRARY BUT NOT IN + THOSE KNOWN TO THIS CLIST EXIT CODE(1) END END IF &CC = 4 THEN - WRITE &MEMBER EXISTS IN A LOAD LIBRARY AND IS MARKED + NOT-EXECUTABLE IF &CC = 8 THEN DO IF &XCNT. ^= 0 THEN DO WRITE MEMBER=&MEMBER. WAS FOUND IN &XCNT. OF THE + &AVAIL. AFP LIBRARIES PRESENTED, + BUT FOR YOU IS NOT PART OF STEPLIB OR LOAD LIBRARIES EXIT CODE(1) END END IF &XCNT. = 1 THEN EXIT CODE(0) IF &XCNT. = 0 THEN WRITE MEMBER=&MEMBER. WAS NOT FOUND IN + ANY OF THE &AVAIL. SELECTED AFP LIBRARIES ELSE WRITE MEMBER=&MEMBER. WAS FOUND IN &XCNT. OF THE + &AVAIL. AFP LIBRARIES PRESENTED EXIT CODE(0)