Start of change

$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

Read syntax diagramSkip visual syntax diagram $T SUBMITLIBSUBLIB 'xxxxxxxx'(,xxxxxxxx'xxxxxxxx'*-xxxxxxxx-'xxxxxxxx'-*) Selection limiting keywordsModification keywords
Modification keywords
Read syntax diagramSkip visual syntax diagram,,DDnnnnData Set Specifications,CONDitional,UNCONDitionalNAME= newname
Data Set Specifications
Read syntax diagramSkip visual syntax diagram,/DSNAME=¬=><dsname,/VOLser=¬=><volser,/UNIT=¬=><hhhh/hhhhcccccccc,/PATH=¬=><pathname
Selection limiting keywords
Read syntax diagramSkip visual syntax diagram,/DDnn-nn*(,nn*-nn*)Data Set Selection Criteria,/DDNAME=¬=><ddname,/USEcount=¬=><nnn
Data Set Selection Criteria
Read syntax diagramSkip visual syntax diagram,/DSNAME=¬=><dsname,/VOLser=¬=><volser,/UNIT=¬=><hhhh/hhhhcccccccc,/PATH=¬=><pathname

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
where hhh and hhhh represent the device numbers. A slash (/) must precede a 4 digit device number.
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

Started with:
$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.

End of change