$T SUBMITLIB(xxxxxxxx) – Modify a $SUBMIT concatenation
Function
To modify an existing SUBMITLIB concatenation. Using this command, new data sets can be added to a concatenation, or existing data sets updated or deleted from the concatenation. If a $T SUBMITLIB command is entered with no operands, then concatenation is reallocated. This is useful to retry a previously failed allocation or to pick up updates to an existing data set (for example, a data set cataloged on a new volume).
Syntax
Parameters
- (xxxxxxxx)
- Specifies the – to 8– character SUBMITLIB DD name being modified. If a SUBMITLIB does not exist with this name, the command fails. You can also specify wild cards on this parameter. See Using wildcards for additional information.
- DD(nnn)=
- Specifies up to 255 data sets that are part of the concatenation for this SUBMITLIB DD name. Existing data sets can be altered or removed including adding data sets to the concatenation. Data sets in this list are compacted after the $T command is processed. If you add a new DD(100) to an existing concatenation of 2 data sets, the resulting concatenation has DD(1), DD(2), and DD(3). If you then set the data set name or path for DD(2) to null, it is removed from the concatenation leaving just DD(1) and DD(2) where DD(2) has the old DD(3) data set specification. Though up to 255 data sets can be specified, MVS rules limit any data set concatenation to 255 extents. If any data set has more than one extent, then the total number of data sets that can be supported is reduced.
- DSName=jxxx...x
- Specifies a 1– to 44– character data set name which JES2 includes in this SUBMITLIB concatenation. This must specify a partitioned data set (PDS). If this value is coded as null (no operand specified), then the DD(nnn) is deleted from the concatenation.
- UNIT=hhhh|/hhhh|nnnn|cccccccc
- If the SUBMITLIB data set to be used is not cataloged, then the unit information for the device
containing the data set must be specified in one of the following ways:
- hhhh | /hhhh
- Specifies a 3 or 4 digit hexadecimal device number. Device numbers can be specified in one of
the following formats:
- UNIT=hhh
- UNIT=/hhh
- UNIT=/hhhh
- nnnn
- Specifies a device name.
- cccccccc
- Specifies a 1 to 8 character group name that is assigned to the device or group of device or group of devices that contained the non-cataloged initialization data set to be included.
- VOLser=xxxxxx
- If the SUBMITLIB data set to be used is not cataloged, then this specifies a 1-6 character volume serial number on which the data set resides.
- PATH=’xxxxxxxx’
- Specifies a 1-88 character file system PATH which JES2 includes in this SUBMITLIB concatenation. If this value is coded as null (no operand specified), then the DD(nnn) is deleted from the concatenation. Files in this path with a 1-8 character uppercase names that conform to standard PDS member names can be accessed by the $SUBMIT command. This path is allocated with the FILEDATA=TEXT allocation option. If the PATH= value is coded as null (no operand specified), then the DD(nnn) is deleted from an existing concatenation.
- NAME=xxxxxxxx
- Allows the name of an existing SUBMITLIB concatenation to be changed. Specifying SUBMITLIB(TEST01) NAME=PROD renames the TEST01 SUBMITLIB concatenation to PROD. If there is an existing PROD concatenation, it is replaced by the current TEST01 concatenation. This is useful for testing new concatenations before putting them into production.
- UNCONDitional|CONDitional
- Specifies what action JES2 takes if one of the data sets or paths cannot be allocated. If CONDitional is specified (or defaulted), then if any data set or path cannot be allocated, the $T command fails. If UNCONDitional is specified, then an error allocating a single data set or path is ignored. The entry is not added to the concatenation but it remains assigned to the DD(nnn). If the concatenation is displayed, failed DD(nnn) displays the text 'ALLOCATION FAILED' before the data set name or path value. If all the data sets and paths in a concatenation fail to allocate, then the $T fails regardless of whether UNCONDitional was specified.
- /DDNAME=xxxxxxxx
- Selects SUBMITLIB concatenations based on the real DD name that is associated with the concatenation.
- Authority Required/USEcount=nnn
- Selects SUBMITLIB concatenations based on the current use count for the concatenation. A SUBMITLIB is considered in use if a $SUBMIT command is currently submitting a job from the concatenation.
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.
Processing Considerations
A $T SUBMITLIB command with no operands causes the specified concatenation to be reallocated. A $T SUBMITLIB(*) does this for all concatenation. This is useful to retry a previously failed allocation or to pick up updates to an existing data set (for example, a data set cataloged on a new volume or a data set expanding into new extents).
Unlike PROCLIB processing, JES2 opens and closes the SUBMITLIB concatenations for every $SUBMIT command. This reduces the risk of errors when data sets in the concatenation are compressed.
Scope
Single member. The values that are supplied for this command will be in effect for this member only.
However, depending on your installation's setup, you might want this command to be applied to all members of the MAS (to ensure a consistent environment across the MAS). If so, you can use the MVS ROUTE *ALL command to issue this command to all active members (if the JES2 command character is the same on all members. See z/OS MVS System Commands for more information on using the ROUTE *ALL command.
Messages
$HASP736 displays the SUBMITLIB updated concatenation.
$HASP003 RC=52 indicates that you are trying to modify a SUBMITLIB concatenation that does not exist or that there are no SUBMITLIB concatenations that match the criteria you specified.
Examples
$dsubmitlib(prod)
$HASP736 SUBMITLIB(PROD)
$HASP736 SUBMITLIB(PROD)
$HASP736 DD(1)=(ALLOCATION FAILED,
$HASP736 DSNAME=SYS1.PROC.JCL),
$HASP736 DD(2)=(DSNAME=SYS1.TEST.JCL,
$HASP736 VOLSER=STORAG),
$HASP736 DD(3)=(DSNAME=JES2.TEST.JCL,
$HASP736 VOLSER=STORAG)
1
$tsublib(prod),dd1=dsn=sys1.prod.jcl
$HASP736 SUBMITLIB(PROD)
$HASP736 SUBMITLIB(PROD)
$HASP736 DD(1)=(DSNAME=SYS1.PROD.JCL,
$HASP736 VOLSER=STORAG),
$HASP736 DD(2)=(DSNAME=SYS1.TEST.JCL,
$HASP736 VOLSER=STORAG),
$HASP736 DD(3)=(DSNAME=JES2.TEST.JCL,
$HASP736 VOLSER=STORAG)
Corrected data set name for DD(1).
2
. $tsubmitlib(prod),dd2=dsn=
$HASP736 SUBMITLIB(PROD)
$HASP736 SUBMITLIB(PROD)
$HASP736 DD(1)=(DSNAME=SYS1.PROD.JCL,
$HASP736 VOLSER=STORAG),
$HASP736 DD(2)=(DSNAME=JES2.TEST.JCL,
$HASP736 VOLSER=STORAG)
Removed unwanted DD(2) data set.
3
$t sublib(test),name=prod
$HASP736 SUBMITLIB(PROD)
$HASP736 SUBMITLIB(PROD)
$HASP736 DD(1)=(DSNAME=SYS1.PROD.JCL,
$HASP736 VOLSER=STORAG),
$HASP736 DD(2)=(DSNAME=SYS1.TEST.JCL,
$HASP736 VOLSER=STORAG)
After testing a new concatenation TEST, rename it to the new PROD concatenation.
4
$t sublib(*),dd(*)=(/dsn=*.test.*,dsn=JES2.TEST.JCL)
$HASP736 SUBMITLIB(PROD)
$HASP736 SUBMITLIB(PROD)
$HASP736 DD(1)=(DSNAME=SYS1.PROD.JCL,
$HASP736 VOLSER=STORAG),
$HASP736 DD(2)=(DSNAME=JES2.TEST.JCL,
$HASP736 VOLSER=STORAG)
Replace all data sets that match the pattern ‘*.TEST.*’ with the data set JES2.TEST.JCL. It is strongly recommended that you issue a $D command with the filters (for example $d sublib(*),dd(*)=(/dsn=*.test.*) to see what entries are altered before issuing the $T command.