Return to Mainframe Utilities Page
Module
/**********************************************************************
/* UTILITY: GETOUTPT *
/* AUTHOR: DAVID LEIGH *
/* FUNCTION: THIS CLIST READS THE SDSF HELD QUEUE FOR THE JOB NAME YOU*
/* SPECIFY AND LOADS ALL THE SYSOUT FOR EACH JOB WITH THAT *
/* NAME, INTO A DATASET. *
/**********************************************************************
PROC 1 JOBNAME PERMANENT EDIT BROWSE UTILITY(GETOUTPT)
/*** CHECK THE DEBUG SWITCH ***/
ISPEXEC VGET DBGSWTCH PROFILE
IF &DBGSWTCH = ON THEN +
CONTROL MSG LIST CONLIST SYMLIST NOFLUSH NOPROMPT ASIS
ELSE +
CONTROL NOMSG NOLIST NOFLUSH NOPROMPT ASIS
IF &PERMANENT = PERMANENT THEN SET VOLUME =
ELSE SET VOLUME = &STR(VOLUME(WRK$$$))
FREE DD(TEMPDD)
SET LP = &STR((
SET RP = &STR())
SET SYSOUTTRAP = 1000
CONTROL MSG
STATUS &JOBNAME
CONTROL NOMSG
SET SYSOUTTRAP = 0
SET X = &SYSOUTLINE
DO I = 1 TO &X
SET SYSDVAL = &STR(&SYSNSUB(2,&&SYSOUTLINE&I))
READDVAL PARM JOBNAME NULL
IF &PARM = JOB THEN +
DO
SET A = &SYSINDEX(&STR(&LP),&STR(&JOBNAME))
SET B = &SYSINDEX(&STR(&RP),&STR(&JOBNAME))
SET NODEA = &SUBSTR(1:&A-1,&STR(&JOBNAME))
SET NODEB = &SUBSTR(&A+1:&B-1,&STR(&JOBNAME))
SET JOBDSN = &STR(&SYSUID..JES.SYSOUT.&NODEA..&NODEB)
SET ZEDLMSG = &STR(*** LOADING "&JOBNAME" +
INTO "&JOBDSN" ***)
ISPEXEC CONTROL DISPLAY LOCK
ISPEXEC DISPLAY PANEL(MSGPANEL)
DELETE '&JOBDSN'
ALLOC DD(TEMPDD) DSN('&JOBDSN') +
NEW CATALOG &STR(&VOLUME) +
UNIT(SYSDA) &VOLUME +
SPACE(10,10) CYLINDERS RELEASE DSORG(PS) +
RECFM(F B A) LRECL(255) BLKSIZE(23460)
FREE DD(TEMPDD)
OUTPUT &JOBNAME PRINT('&JOBDSN') HOLD KEEP
END
END
IF &EDIT = EDIT THEN ISPEXEC EDIT DATASET('&JOBDSN')
IF &BROWSE = BROWSE THEN ISPEXEC BROWSE DATASET('&JOBDSN')
EXIT
Documentation
GETOUTPT loads batch job output from the SDSF held queue into a dataset. The
command syntax is as follows:
COMMAND ===> tso getoutput jobname {permanent}
Example:
COMMAND ===> tso getoutput p@dalxxx
"jobname" - The name of the job you want extracted from SDSF. Due to the
restrictions of the TSO "OUTPUT" command which is used to perform this task,
you can only use GETOUTPT on your own jobs. Use the SDSF PRINT ODSN command
for other situations.
"permanent" - This is an optional keyword which, if specified, indicates that
the dataset should be allocated on permanent DASD instead of a work pack. Work
pack allocation is the default.
Each job with the same name will be extracted, but each job will be in a
separate dataset. The datasets will have the name format of:
userid.JES.SYSOUT.jobname.jobnumber
Each dataset is defined as LRECL=255, RECFM=FBA.

0 Comments