Return to Mainframe Utilities Page
Module
ISREDIT MACRO
ISPEXEC CONTROL ERRORS RETURN
/**** LAST UPDATED: NOV 22, 1999, BARBARA DIUBALDO P@UBLD ***/
/**** THIS IS A CLIST MACRO. ***/
/**** IT BRINGS IN THE WHOLE FILE AND LETS US CHANGE VARIOUS */
/**** THINGS. PROCESS IS TO DO A 3.14 WITH AN OUTPUT FILE ***/
/**** THEN DO THIS MACRO IN AN EDIT MODE THUS PUTTING EVERY***/
/**** FOUND MEMBER ON LINE THAT IT FOUND. IT ALSO USES ***/
/**** THE CLIST NOBLANK. ***/
/**** SET MESSAGE DISPLAY ON/OFF BASED ON THE DEBUG SWITCH ***/
ISPEXEC VGET (DBGSWTCH) PROFILE
IF &DBGSWTCH = &STR(ON) THEN CONTROL MSG LIST CONLIST SYMLIST NOFLUSH
ELSE CONTROL NOMSG NOLIST NOFLUSH NOPROMPT
/**** CALL TO DO NOBLANK CLIST **/
ISREDIT %NOBLANK
/**** GET RID OF LINE AND REMAINING LINES AFTER **/
SET TARGET = &NRSTR(ND LINES-PROC MEMBERS-W/LNS MEMBERS-WO/LNS)
ISREDIT FIND FIRST '&NRSTR(&TARGET)'
ISREDIT DELETE .ZCSR .ZLAST
/**** BEGIN AT TOP AND IDENTIFY LINE THAT WOULD HAVE MEMBER NAMES**/
SET TARGET = &NRSTR(--------- STRING(S) FOUND --------------)
ISREDIT FIND FIRST '&NRSTR(&TARGET)'
SET SAVECC = &LASTCC
DO WHILE &SAVECC = 0
ISREDIT (DLINE) = LINE .ZCSR
SET NAME = &SUBSTR(3:8,&NRSTR(&DLINE))
/**** PROCESS GOES TO NEXT LINE **/
ISREDIT FIND NEXT P'=' 1
SET SAVECC2 = &LASTCC
DO WHILE &SAVECC2 = 0
ISREDIT (DLINE) = LINE .ZCSR
IF &SYSINDEX(&NRSTR(&TARGET),&NRSTR(&DLINE)) = 0 THEN +
DO
SET DLEN = &LENGTH(&NRSTR(&DLINE))
SET DLINE = &NRSTR( )&NRSTR(&NAME)+
&SUBSTR(11:&DLEN,&NRSTR(&DLINE))
IF &SYSINDEX(&STR('),&NRSTR(&DLINE)) > 0 THEN +
ISREDIT LINE .ZCSR = "&NRSTR(&DLINE)"
ELSE +
ISREDIT LINE .ZCSR = '&NRSTR(&DLINE)'
ISREDIT FIND NEXT P'=' 1
SET SAVECC2 = &LASTCC
END
ELSE +
SET SAVECC2 = 100
END
ISREDIT FIND NEXT '&NRSTR(&TARGET)'
SET SAVECC = &LASTCC
END
/**** EXCLUDES THESE LINES FROM THE PROCESS **/
ISREDIT EXCLUDE ALL '&NRSTR(&TARGET)'
ISREDIT EXCLUDE ALL 'MVS/PDF FILE/LINE/WORD/BYTE/SFOR COMPARE '
ISREDIT EXCLUDE ALL 'SOURCE SECTION SRCH DSN:'
ISREDIT EXCLUDE ALL 'SUMMARY SECTION SRCH DSN: '
/**** DELETES ALL EXCLUDED LINES **/
ISREDIT DELETE ALL X
EXIT
HELPSEC: + 02480000
ISPEXEC SELECT PGM(ISPTUTOR) PARM(HELPSHEL) 02490000
SET ZEDLMSG = &NRSTR(*** HELP DISPLAYED FOR SIDBYSID UTILITY + 02490000
*** NO PROCESSING PERFORMED ***) 02490000
ISPEXEC SETMSG MSG(UTLZ000) 02490000
EXIT
Documentation
ISPF option 3.14 allows you to search for strings in a sequential dataset or a
PDS. If the dataset is a PDS, the output is in the format :
mbmrname -------------- STRING(S) FOUND ---------------------
000001 data from the line
000002 data from the next line
"SIDBYSID" changes the format to :
mbmrname data from the line
mbmrname data from the next line

0 Comments