In line with mainframe practice, you can limit the amount of output sent to SYSOUT datasets. You can apply limits to the whole job by giving a value in the JCL job card. You can set global limits for the number of lines output using environment variables.
The LINES, PAGES, CARDS, and BYTES keyword parameters on the JCL job card are supported. PAGES, CARDS and BYTES are translated to a number of lines using the following values:
For example, an entry of PAGES=(100,CANCEL) on the job card equates to an output limit of 6000 lines before the job is cancelled.
The OUTLIM value is ignored for SYSABEND, SYSMDUMP and SYSUDUMP datasets.
The user may implement an OUTLIM user exit to call if the output limit is reached. This can tell the system whether to continue or abend the job. The user exit program must be called MFJUSOXT, a sample of which is included in the source\enterpriseserver\exits folder of your product.
Global limits are set by environment variables, either in the environment in which the enterprise server region was started or by entering the values in the enterprise server region's configuration settings. These values apply to all jobs that run in that region.
The format of the variable value is similar to that which would be entered in the JCL job card accounting information: it should contain the limit value and, optionally, the action to perform when that limit is reached. The actions you can specify are CANCEL, DUMP or WARNING. CANCEL and DUMP cause the job to abend at that point, WARNING issues a message but processing continues. If you give no action for LINES, PAGES, CARDS, and BYTES the system issues a warning and continues processing. If you give no action for OUTLIM the job is cancelled.
Environment Variable | Value Range | Example |
---|---|---|
ES_JES_LINES | 0-99999999 |
ES_JES_LINES=(100,CANCEL)Limit the number of lines output to 100000. When this limit is reached cancel the job. This results in an S722 Output limit exceeded system abend code being produced. |
ES_JES_PAGES | 0-99999999 |
ES_JES_PAGES=10Each page is assumed to hold 60 lines, therefore when 600 lines (60×10) have been processed issue a warning and carry on. |
ES_JES_CARDS | 0-99999999 |
ES_JES_CARDS=(30,WARNING)Each card is assumed to hold 25 lines, therefore at 750 lines (25×30) issue a warning message and carry on. |
ES_JES_BYTES | 0-999999 |
ES_JES_BYTES=(100,DUMP)Value for bytes is in thousands, each line is assumed to hold 132 bytes, therefore at 100000/132 lines the job will be cancelled. |
ES_JES_OUTLIM | 1-16777215 |
ES_JES_OUTLIM=5000The job will be cancelled if any of the SYSOUT datasets reaches 5000 lines. |