$T JOBCLASS - Set job class characteristics

Function

To modify the characteristics associated with one job class, started task control (STC) class, or time-sharing user (TSU) class.

Syntax

Read syntax diagramSkip visual syntax diagram$TJOBCLASS 'jobclass'(,jobclass'jobclass'*-jobclass-'jobclass'-*) Selection limiting keywordsModification keywords
Modification keywords
Read syntax diagramSkip visual syntax diagram,ACCT=NoYes,ACTIVE=NoYes,AUTH=ALLCONSINFOIOSYS(,ALLCONSINFOIOSYS),BLP=NoYes,COMMAND=DISPLAYEXECUTEIGNOREVERIFY,CONDPURG=NoYes,COPY=NoYes,DESC=,DSENQSHR=AUTOALLOWDISALLOW,DUPL_JOB=DELAYNODELAY,GDGBIAS=JOBSTEP,GROUP=name,HOLD=NoYes,IEFUJP=NoYes,IEFUSO=NoYesJESLOG=SPIN(SPIN+hh:mmhh:mmnnnnnnKnnnM)SUPPRESSNOSPIN,JOBRC=MAXRCLASTRC,JOURNAL=NoYes
Read syntax diagramSkip visual syntax diagram,LOG=NoYes,MODE=JESWLM,MSGCLASS=msgclass,MSGLEVEL=statements(statements,messages),OUTDisp=HHOLDKKEEPLLEAVEPPURGEWWRITE(HHOLDKKEEPLLEAVEPPURGEWWRITE,HHOLDKKEEPLLEAVEPPURGEWWRITE),OUTPUT=NoYes,PERFORM=000nnn,PGMRNAME=NoYes,PROCLIB=proclib,PROMO_RATE=0nnn,Qaff=ANY+-memname(,ANY+-memname),QHELD=NoYes,REGION=region,RESTART=NoYes,SCAN=NoYes,SCHENV=schenv,SWA=ABOVEBELOW,SYSSYM=ALLOWDISALLOW,TIME=min(min,sec),TYPE26=NoYes,TYPE6=NoYes,XBM=xbm,XEQCount=(,MAXimum=maximum),XEQMEMBER(name)=(,MAXimum=maximum)
Notes:
  • 1 AUTH can be coded up to 4 times.
Selection limiting keywords
Read syntax diagramSkip visual syntax diagram,/ACCT=^=NoYes,/ACTIVE=NoYes,/BLP=^=NoYes,/COPY=^=NoYes,DSENQSHR=AUTOALLOWDISALLOW,/DUPL_JOB=DELAYNODELAY,/GROUP=name,/HOLD=^=NoYes,/IEFUJP=^=NoYes,/IEFUSO=^=NoYes,/JESLOG=^=NoYes,/JOBRC=^=MAXRCLASTRC,/JOURNAL=^=NoYes
Read syntax diagramSkip visual syntax diagram,/LOG=^=NoYes,/MODE=^=JESWLM,/MSGLEVEL=^=),/NAME=^=><name,/OUTPUT=^=NoYes,/PERFORM=^=><perform,/PGMRNAME=^=NoYes,/PROCLIB=^=><proclib,/PROMO_RATE=^=><n,/Qaff=¬=sysaff,/QHELD=^=NoYes,/RESTART=^=NoYes,/SCAN=^=NoYes,/SCHENV=^=><schenv,/SWA=^=ABOVEBELOW,SYSSYM=ALLOWDISALLOW,/TIME=^=),/TYPE26=^=NoYes,/TYPE6=^=NoYes,/XBM=^=><xbm,/XEQCount=(,/CURrent=^=><current/MAXimum=^=><maximum),/XEQMEMBER(name)=(,/CURrent=^=><current/MAXimum=^=><maximum)

Parameters

jobclass
The subscript defining the job classes to be modified by this command. Valid class specifications are any existing job class, STC, TSU, and the wild cards, *, and ?. The subscript can specify a specific job class or a range of job classes.
ACCT={No|Yes}
Specifies whether an account number is required (Yes) or not required (No).

This parameter is not allowed on either the JOBCLASS(STC) or JOBCLASS(TSU) initialization statements.

ACTIVE=[Yes|No]
Specifies whether or not the class is active. Active classes can be used on new jobs that are submitted. The ACTIVE parameter has no effect on jobs once they have been submitted. This parameter does not apply to the STC and TSU job classes.
AUTH={ALL|CONS|INFO|IO|SYS}
Specifies the MVS™ operator command groups that are to be executed. The groups includes:
ALL
All operator command types.
CONS
Console commands.
INFO
Information commands (such as display).
IO
Input/output commands.
SYS
System commands.
BLP={No|Yes}
Specifies that either the bypass label processing parameter in the label field of a DD statement is to be ignored (NO) and processed as no label or that bypass label processing is performed as requested (YES) and the label parameter is processed as it appears.
COMMAND={DISPLAY|EXECUTE|IGNORE|VERIFY}
Specifies the disposition of commands read from the input stream as follows.
DISPLAY
The command is displayed and scheduled for execution.
EXECUTE
The command is scheduled for execution.
IGNORE
The command is ignored (that is, interpreted as a ‘no operation').
VERIFY
Specifies that the system displays the command, asks the operator whether the command should be executed, and if the operator replies “YES”, schedules the command for execution.
CONDPURG={No|Yes}
Specifies whether (YES) or not (NO) system data sets (such as JESMSG and SYSMSG) in this job class are to be conditionally purged.
Note: This is only valid for JOBCLASS(STC) and JOBCLASS(TSU).
COPY={No|Yes}
Displays whether (Yes) or not (No) jobs in this job class are to be queued for output processing as though TYPRUN=COPY was specified on the JOB statement for these jobs.
Start of changeDESC=End of change
Start of changeSpecifies an 80 character string of any description.End of change
DSENQSHR{=ALLOW|AUTO|DISALLOW}
Indicates how the system handles changes in data set disposition between job steps. When a step includes a DD statement with OLD, NEW or MOD on the DISP (disposition) keyword, and a later step requests the same data set as SHR, this parameter controls whether the system can change the serialization on the data set to shared control; permitting this change allows other jobs to share that same data set. The value specified interacts with the value specified for DSENQSHR on the JOB card to determine the behavior:
ALLOW
The system is allowed to change the serialization on the data set to shared control if the JOB card specifies ALLOW.
AUTO
The system is allowed to change the serialization on the data set to shared control if the JOB card specifies ALLOW or USEJC.
DISALLOW
The system is not allowed to change the serialization on the data set to shared control.
Note: Specifying DSENQSHR=AUTO restricts any job that is converted with the class to run only on the z/OS 2.1 version of MVS, or later. If earlier levels of MVS are active in the MAS (JESPLEX), then this additional system restriction could prevent some jobs from running.
Table 1. JOBCLASS attribute for DSENQSHR
LANGUAGE JOBCLASS attribute for DSENQSHR
JCL   AUTO ALLOW DISALLOW
ALLOW yes yes no
USEJC yes no no
DISALLOW no no no
When yes is indicated, the system is allowed to change the data set serialization to shared control and other jobs may share that data set with this job.
DUPL_JOB={DELAY|NODELAY}
Specifies whether or not JES2 is allowed to concurrently execute batch jobs with the same name in the same MAS. If DUPL_JOB=DELAY is specified, JES2 is not allowed to execute batch jobs with the same name in the same MAS at the same time.
Note: DUPL_JOB on a JOBCLASS specification is ignored if JOBDEF DUPL_JOB=NODELAY. If JOBDEF DUPL_JOB=DELAY, that specification can be overridden on a jobclass basis by specifying DUPL_JOB=NODELAY on the JOBCLASS statement.
GDGBIAS{=JOB|STEP}
Specifies how relative references to a generation data set in a DD JCL statement are resolved. If the job's JOB JCL statement includes the GDGBIAS= keyword, the job CLASS specification for GDGBIAS is ignored. Start of changeThis is processed by the z/OS converter. End of change
JOB

Relative references to a generation data set are resolved on a job basis. The system establishes the relationship between the relative generation number and the absolute generation number when the generation data set is first referenced in the job. This relationship is consistent throughout the job.

STEP

Relative references to a generation data set are resolved on a job step basis. The system establishes the relationship between the relative generation number and the absolute generation number when the generation data set is first referenced in each job step. Each job step that references the generation data set establishes a new relationship.

GROUP=name
Specifies the 2-8 character name of the job class group the class will be associated with. The name cannot match any existing job class (including the default 1 character job classes). This parameter does not apply to the STC and TSU job classes.
HOLD={No|Yes}
Specifies that jobs in the job class are to be held (Yes) or not held (No). If a job is held, it will remain so until a RELEASE command for the job is issued by the operator ($A J).

This parameter is not allowed on either the JOBCLASS(STC) or JOBCLASS(TSU) initialization statements.

IEFUJP={No|Yes}
Specifies whether (YES) or not (NO) the IEFUJP exit is taken when a started task is purged. IEFUJP receives control when a started task is ready to be purged from the system; that is, after the started task has been ended and all the SYSOUT output that pertains to the started task has been processed.
IEFUSO={No|Yes}
Specifies whether (YES) or not (NO) the IEFUSO installation exit is taken when the SYSOUT limit is reached for a started task in this job class. The SYSOUT limit, which is specified by the OUTLIM parameter on the DD statement, defines the maximum number of physical records to be written to the associated SYSOUT data set. When the OUTLIM value is exceeded, JES2 normally calls the IEFUSO SMF exit routine either to increase the SYSOUT limit or to end the job. When NO is specified and OUTLIM is exceeded, JES2 abnormally ends the job.
JESLOG=
Sets the default processing for the JESLOG data sets (JESMSGLG and JESYSMSG).
SPIN
JESLOG data is to be immediately spun off for jobs in this jobclass.
Note: Specifying JESLOG=SPIN will cause a job in this class to use at least two additional track groups of SPOOL space for the two JESLOG data sets. If this job class normally has a large number of jobs that use a minimal amount of SPOOL space, then an increase of two track groups could significantly increase SPOOL utilization. Consider additional SPOOL requirements when deciding whether to use JESLOG=SPIN.
(SPIN,+hh:mm)
Indicates to spin JESLOG every hh:mm time interval, where hh is hours and has a range of 0 through 23 and, mm is minutes and has a range of 00 through 59.
Note: A minimum of 10 minutes must be specified or an error message occurs. Also, for time intervals of less than one hour, you must specify JESLOG=(SPIN,+00:mm).
(SPIN,hh:mm)
Indicates to spin JESLOG at hh:mm every 24 hours.
(SPIN,nnn)
Indicates to spin JESLOG whenever either JESMSGLG or JESYSMSG has nnn lines. nnn is the number of lines in the data set and has a range of 1 through 999. nnn is specified as nnn, nnnK or nnnM, where 'K' is thousands and 'M' is millions.
Note: A minimum of 500 lines must be specified or an error message occurs.
(SPIN,nnnK)
Indicates to spin JESLOG whenever either JESMSGLG or JESYSMSG has "nnnK" lines.
(SPIN,nnnM)
Indicates to spin JESLOG whenever either JESMSGLG or JESYSMSG has "nnnM" lines.
SUPPRESS
Indicates that the JESLOG data sets will have nothing written to them during the execution of jobs defined for this job class. Data will only be written to JESLOG data sets during each job's input service and post execution.
NOSPIN
Indicates that JESLOG data will not be spun, but will not be suppressed. NOSPIN is the default setting for the JOBCLASS(v) initialization statement.
JOBRC=MAXRC|LASTRC
Specifies the method for JES2 to use to determine the job return code. Specify MAXRC to use the highest return code of any executed step as the job return code. Specify LASTRC to use the return code of the last executed step as the job return code. The default is MAXRC.
JOURNAL={No|Yes}
Specifies whether (Yes) or not (No) job-related information is to be saved in a job journal.
Job journaling limits the scope of RESTART=YES. If the JOURNAL=Yes parameter is specified:
  • JES2 restarts interrupted jobs from the beginning only if the MVS system is unable to restart the job from a step or checkpoint.
  • RESTART=NO has no effect; all jobs are requeued for execution. (Specifying RD=R|RNC on the JCL JOB statement has the same effect.)
If the jobs are not journaled (JOURNAL=No), JES2 always attempts to restart interrupted jobs in this class from the beginning.

This parameter is not allowed on either the JOBCLASS(STC) or JOBCLASS(TSU) initialization statements.

LOG={No|Yes}
Specifies whether (YES) or not (NO) the JES2 job log is printed for started tasks. The JES2 job log contains the user's console messages and replies to WTORs issued during the processing of the job. When NO is specified, the printing of JES2 statistics information (normally printed with the job) is also suppressed.

This parameter is not allowed on either the JOBCLASS(STC) or JOBCLASS(TSU) initialization statements.

MODE={JES|WLM}
Indicates whether jobs in this class are to be run under JES-mode or WLM-mode initiators.

This parameter is not allowed on either the JOBCLASS(STC) or JOBCLASS(TSU) initialization statements.

MSGCLASS=msgclass
Specifies the message class (A-Z,0-9) for started tasks or time-sharing users. Valid only for JOBCLASS(STC) and JOBCLASS(TSU).
MSGLEVEL=statements
Specifies a message level value for use when the MSGLEVEL= parameter is not specified on a JOB statement. If a MSGLEVEL= parameter is not specified, JCL and allocation/termination messages are recorded in the system message data set according to the value specified in this parameter. The character “n” specifies the kinds of JCL listed, as follows:
0
JOB statement only
1
Input statements, cataloged procedure statements, and symbolic parameter substitution values
2
Input statements only, including instream procedures.
The character “m” specifies the kinds of allocation/termination messages listed, as follows:
0
No messages are to be listed, except in the case of an abnormal termination, in which case allocation/termination messages are listed.
1
Allocation/termination messages are listed.
OUTDisp=(normal,abnormal)
Specifies the default disposition of the JES data sets created by jobs in the specified job class(es).
normal
Specifies the output disposition if the job ends successfully. Specify one of the output dispositions below.
abnormal
Specifies the output disposition if the job ends unsuccessfully. Specify one of the output dispositions below.
The valid output dispositions:
H|HOLD
Hold the output. JES2 does not process the output until you either change the disposition to WRITE or KEEP, or release the output. When the output is released, the disposition changes to WRITE.
K|KEEP
Process the output and then keep a copy of it on spool. After processing, the disposition of this output becomes LEAVE.
L|LEAVE
JES2 does not process the output until you change the disposition to WRITE or KEEP, or release the output. Once the output is released, the disposition changes to KEEP.
P|PURGE
Purge the output immediately.
W|WRITE
Process the output then purge it.

See z/OS JES2 Initialization and Tuning Guide for more information about specifying output disposition and how JES2 determines output disposition defaults.

OUTPUT={No|Yes}
Specifies whether SYSOUT data is to be written for started tasks.
PERFORM[=nnn|000]
Specifies the default performance group number for this job class. This number is used as the performance-group number on the JCL EXEC statement when a performance-group number is not specified on the JCL JOB or EXEC statement for a job of this job class.
Note: The performance-group value specified on the EXEC card (step level) has no effect if running in WLM goal mode.
The parameter default is 000, which indicates that no performance-group processing will be performed by JES2. A default value of 1 is assigned for all steps in a job.
PGMRNAME={No|Yes}
Specifies whether a programmer name is required (Yes) or not required (No) on a JCL JOB statement.
PROCLIB=proclib
Specifies the default procedure library number (00-99) which is to be used for started tasks.
PROMO_RATE
Specifies how many positions a job can be moved up the execution queue in one STARTBY aging cycle (1 minute). Default value PROMO_RATE=0 means that STARTBY function is disabled for the job class.
Qaff=sysaff
Specifies which members a particular job class is active on (not held). A member list can be a combination of the following keywords separated by commas.
ANY
This job class is active on all members in the JES2 multi-access spool configuration.
+|-memname|*
The memnames (one to four characters using A-Z, 0-9, $, #, and @) to be added to (+) or deleted from (-) the current list of members that this job class is active on. If neither + nor - is specified, the affinities of the job class is explicitly to the specified members. '*' specifies the member the command was issued on.
Note: The processing of the QAFF parameter must result in at least one member that is eligible to execute this job. Otherwise, the command is rejected. Start of changeQAFF has no effect on STC or TSU class.End of change
QHELD={Yes|No}
Specifies whether (Yes) or not (No) jobs in this class are to be held (not selected for execution) until the class is released from held status by operator command ($TJOBCLASS,QHELD=NO).

This parameter is not allowed on either the JOBCLASS(STC) or JOBCLASS(TSU) initialization statements.

REGION=region
Specifies the default for the region size assigned to each job step.
RESTART={No|Yes}
Specifies whether (Yes) or not (No) JES2 is to requeue for execution any job of this job class that had been executing before the IPL of the system was repeated and a JES2 warm start was performed.
Job journaling limits the scope of RESTART=YES. If the JOURNAL=Yes parameter is specified:
  • JES2 restarts interrupted jobs from the beginning only if the MVS system is unable to restart the job from a step or checkpoint.
  • RESTART=NO has no effect; all jobs are requeued for execution. (Specifying RD=R|RNC on the JCL JOB statement has the same effect.)
If the jobs are not journaled (JOURNAL=No), JES2 always attempts to restart interrupted jobs in this class from the beginning.

This parameter is not allowed on either the JOBCLASS(STC) or JOBCLASS(TSU) initialization statements.

SCAN={No|Yes}
Specifies that the jobs in this job class are to be queued for output processing immediately after JCL conversion (Yes) or queued as usual (No).

This parameter is not allowed on either the JOBCLASS(STC) or JOBCLASS(TSU) initialization statements.

SCHENV=xxxxx
The default SCHENV for a given JOBCLASS can be specified through $T JOBCLASS(c), SCHENV=xxxxx where xxxxx is a 1 to 16 character SCHENV. The SCHENV must be defined to WLM. If it is not, the setting will be ignored.
SWA={ABOVE|BELOW}
SWA=ABOVE specifies that all eligible schedule work area (SWA) control blocks created for started task will be placed above 16 megabytes in virtual storage.

In a MAS environment, this parameter is set by the member on which the job is converted, not the member on which it executes.

SWA=BELOW specifies that all SWA control blocks for started task will reside below 16 megabytes in virtual storage.

SYSSYM[=ALLOW|DISALLOW]
Specifies whether system symbols are substituted in batch jobs that are submitted in this JOBCLASS. Symbols are substituted when the job is processed by the z/OS converter using the system symbols that are set on the system where the conversion occurs.
Note: You can choose the system that converts a job using SYSAFF on the JOB or JOBPARM JCL/JECL card or SYSTEM on the JOB card. If CNVT_SCHENV= is set to HONOR on the JOBDEF statement, then you can also choose the system that converts a job by associating a system with the job scheduling environment.
TIME=min,sec
Specifies the default for the maximum processor time that each job step can run.
TYPE6={No|Yes}
Specifies whether (YES) or not (NO) JES2 produces type 6 SMF records for started tasks.
TYPE26={No|Yes}
Specifies whether (YES) or not (NO) JES2 produces type 26 (job summary) SMF records for started tasks.
XBM=xbm
The 1 to 8 character name of the execution batch monitor (XBM) procedure to be executed by jobs running in the specified class.

This parameter is not allowed on either the JOBCLASS(STC) or JOBCLASS(TSU) initialization statements.

XEQCount=maximum
Specifies the maximum number of jobs executed in the MAS.
XEQMEMBER(name)=(MAXimum=maximum)
For the member name specified, specifies the maximum number of jobs that can execute concurrently in the class on the member.

Related Commands

$ADD JOBCLASS, $D JOBCLASS, $DEL JOBCLASS, $T JOBCLASS

Authority Required

This command requires system authority. The description of the $T RDRnn command explains how to ensure that the authority of the appropriate MVS system command group is assigned.

This command requires control security access authority. For a description of assigning command input authority, see z/OS JES2 Initialization and Tuning Guide.

Scope

MAS-wide. This command affects job classes on all members of the multi-access spool.

Messages

The $HASP837 message displays the current values of all the parameters on the JOBCLASS initialization statement.

Context

HASCSCAN and HASPSXIT are responsible for processing this command.

Examples

 1   $t jobclass(1),outdisp=(purge,write)  
JOBCLASS(1) ACCT=NO,AUTH=(ALL),BLP=NO, 
COMMAND=VERIFY,COPY=NO, 
DUPL_JOB=DELAY,HOLD=NO,IEFUJP=YES, 
IEFUSO=YES,JESLOG=(NOSPIN), 
JOURNAL=YES,LOG=YES,MODE=JES, 
MSGLEVEL=(0,1), 
OUTDISP=(PURGE,WRITE),OUTPUT=YES, 
PERFORM=000,PGMRNAME=NO,PROCLIB=00, 
QAFF=(ANY),QHELD=NO,RESTART=NO, 
REGION=0001M,SCAN=NO,SCHENV=, 
SWA=BELOW,TIME=(000030,00), 
TYPE26=YES,TYPE6=YES,XBM=MYPROCDR, 
XEQCOUNT=(MAXIMUM=*,CURRENT=0), 
XEQMEMBER(M031)=(MAXIMUM=*, 
CURRENT=0) 
Class 1 jobs are processed by MYPROCDR. If a job in this class ends normally and has not yet entered output processing, JES2 purges its JES2 data sets.
 2   $t jobclass(b),qheld=yes
JOBCLASS(B) MODE=JES,QAFF=(ANY),QHELD=YES,
SCHENV=,XEQCOUNT=(MAXIMUM=*, 
CURRENT=0), 
XEQMEMBER(M031)=(MAXIMUM=*, 
CURRENT=0) 
JES2 modifies the held status for class B.
 3   $t jobclass(w),mode=wlm
JOBCLASS(W) MODE=WLM,QAFF=(ANY),QHELD=NO, 
SCHENV=,XEQCOUNT=(MAXIMUM=*, 
CURRENT=0), 
XEQMEMBER(M031)=(MAXIMUM=*, 
CURRENT=0) 
Jobs in class W which have not yet entered execution will be selected by WLM-controlled initiators rather than JES-controlled initiators.
 4   $t jobclass(stc),condpurg=yes,outdisp=(keep,leave)
JOBCLASS(STC) AUTH=(ALL),BLP=NO,COMMAND=EXECUTE, 
CONDPURG=YES,IEFUJP=YES,IEFUSO=YES, 
JESLOG=(NOSPIN),LOG=YES, 
MSGLEVEL=(0,0),MSGCLASS=Q, 
OUTDISP=(KEEP,LEAVE),OUTPUT=YES, 
PERFORM=000,PROCLIB=00,QAFF=(ANY), 
REGION=0000K,SWA=BELOW, 
TIME=(000010,00),TYPE26=YES, 
TYPE6=YES,XEQCOUNT=(), 
XEQMEMBER(M031)=(MAXIMUM=*, 
CURRENT=5) 
 5  To put CLASS1 and CLASS2 into GROUP1, enter:
$T JOBCLASS(CLASS1,CLASS2),GROUP=GROUP1,ACTIVE=NO
To change all classes in GROUP1 to ACTIVE=NO, enter:
$T JOBCLASS(*),/GROUP=GROUP1,ACTIVE=NO
To change all classes in GROUP1 to GROUP2, enter:
$T JOBCLASS(*),/GROUP=GROUP1,GROUP=GROUP2
STCs that have not yet entered output processing are affected as follows:
  • If the STC ends normally and has only null data sets (other than JES2 data sets), JES2 purges its output. The specification of CONDPURG=YES produces the result.
  • If the STC ends normally but has non-null data sets, JES2 assigns the normal output disposition (keep) to the STC's JES data sets.
  • If the STC ends abnormally, JES2 assigns the abnormal output disposition (leave) to the STC's JES data sets.