SYSOUT in JCL
In JCL, SYSOUT is an Optional Keyword parameter that indicates that the dataset is a system output data set. Basically it assigns an output class to the SYSOUT dataset. As each class would be attached to a device to handle the output, the desired output would be routed to that device.
Syntax:
SYSOUT= { class } { * } { ([class] [,writer-name] [,form-name]) } [,INTRDR ] [,code-name]
SYSOUT=(,)
Class –> Any valid class value(A -Z OR 0-9 generally a list of class codes would be available for each installation for different purposes. Some are for Printing & punching and few are for special processing)
* –> Indicates that the SYSOUT class is same as the MSGCLASS value specified.
INTRDR –> Internal reader is a special Sysout dataset generally used to submit the Jobs.
writer-name –> it is a Member name(1 to 8 char length) of a installation written program used to process output.
form-name –> Print or punch form names which is of 1 to 4 char long.
code-name –> This obtains the processing characteristics from earlier JES2/*OUTPUT Statement.
Examples:
1.
//DDNM1 DD SYSOUT=A
Indicates that the system output should be routed to the device attached to the Class A.
2.
//DDNM1 DD SYSOUT=(A,INTRDR)
It specifies that the output should be routed to device attached to Class A and this should be set to internal reader as an input job stream.
3.
//DD11 DD SYSOUT=(,INTRDR)
4.
//DDNM1 DD SYSOUT=*
In this case the the displays that are there in the program are routed to the spool.
5.
//DD2 DD SYSOUT=&CLASS
&CLASS is the symbolic variable so the value can be supplied from the JOB.
6.
//DD13 DD SYSOUT=(X,WRTR1)
Here wrtr1 is the writer-name thus it indicates to o process the output with this writer.
SYSOUT as a DDName:
SYSOUT is used as a DDNAME as well because few of the utility programs expects the ddname to be SYSOUT otherwise there is no significance to the SYSOUT as DDNAMe.
//DD1 DD SYSOUT=* works same as //SYSOUT DD SYSOUT=* in all normal cases. In both the cases it displays the spool output under SYSOUT as below.
DDNAME StepName JESMSGLG JES2 JESJCL JES2 JESYSMSG JES2 SYSOUT STEP10