$T PROCLIB(xxxxxxxx) - Modify an existing dynamic PROCLIB concatenation
Function
To modify an existing PROCLIB 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 PROCLIB command is entered with no operands, then concatenation will be 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) including static PROCLIB concatenation from the JES2 PROC. PROCxx DDs in the JES2 start PROC can be altered using this command. The actual static allocation cannot be altered, but it can effectively be replaced with a logical concatenation specified by this command.
Syntax
Parameters
- (xxxxxxxx)
- Specifies the 1– to 8–character PROCLIB DD name being modified. If a dynamic PROCLIB does not exist with this name, the command will fail. 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 concatenated for this PROCLIB DD name. Existing data sets can be altered or removed as well as 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 will have DD(1), DD(2) and DD(3). If you then set the data set name for DD(2) to null, it will be 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 will be reduced.
- DDNAME
- Specifies the real DDNAME to be associated with the PROCLIB concatenation.
- DSName=jxxx...x
- Specifies a 1– to–44 character data set name which JES2 will include in this PROCLIB concatenation. This must specify a partitioned data set (PDS). If this value is coded as null (no operand specified) then the DD(nnn) will be deleted from the concatenation.
- UNIT=hhhh|/hhhh|nnnn|cccccccc
- If
the PROCLIB 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 by any of the following formats:
- UNIT=hhh
- UNIT=/hhh
- UNIT=/hhhh
- nnnn
- Specifies a device name.
- cccccccc
- Specifies a 1– to 8–character group name assigned to the device or group of devices that contained the non-cataloged PROCLIB data set to be used.
- USECOUNT
- Specifies the use count for a PROCLIB concatenation. A PROCLIB is considered in use if a conversion processor currently has the data set open.
- VOLser=xxxxxx
- If the PROCLIB data set to be used is not cataloged, then this specifies a 1 to 6 character volume serial number on which the data set resides.
- UNCONDitional|CONDitional
- Specifies what action should be taken if one of the data sets cannot be allocated. If CONDitional is specified then if any data set in the concatenation cannot be allocated (even ones that were not updated), the $T command is failed. If UNCONDitional is specified, then an error allocating a single data set is ignored. The data set is not added to the concatenation but it remains assigned to the DD(nnn). When the concatenation is displayed, failed DD(nnn) will display the text 'ALLOCATION FAILED' before the data set name. If all the data sets in a concatenation fail to allocate, then the $T command fails regardless of whether UNCONDitional was specified.
- NAME=xxxxxxxx
- Allows
the name of an existing dynamic PROCLIB concatenation
to be changed. Specifying PROC(TEST01) NAME=PROC01 will
rename the TEST01 PROCLIB concatenation to PROC01. If there is an
existing PROC01 concatenation, it is replaced by the current TEST01
concatenation. This is useful for testing new concatenations before putting
them into production.
You cannot rename a static PROCLIB. If a static PROCLIB is overridden by a dynamic PROCLIB, renaming the dynamic PROCLIB will restore the static PROCLIB. So in the preceding example, if PROC01 started as a static PROCLIB, and TEST01 was renamed PROC01, then a $T PROCLIB(PROC01),NAME=TEST01 would rename the dynamic PROCLIB back to TEST01 and restore to active status the static PROC01 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.
Scope
Single member. The values supplied for this command will be in effect for this member only.
You may want to use this command to get information about all members in the MAS. To do 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.
See z/OS JES2 Initialization and Tuning Guide for more information on scratching a PSDE in the dynamic PROCLIB concatenation.
Messages
The $HASP319 message displays the current PROCLIB concatenation.
The $HASP003 RC=52 indicates that you are trying to modify a PROCLIB concatenation that does not exist.
The $HASP003 RC=91 indicates that the command failed because there was an allocation failure. In this case, additional IKJ message will be issued to describe the allocation error.
Examples
1
$tproclib(proc01),dd(3)=(dsn=tso.proclib,vol=j2shr2,unit=3380)
$HASP319 PROCLIB(PROC01) DD(1)=(DSNAME=SYS1.PROCLIB),
$HASP319 DD(2)=(DSNAME=TEST.PROCLIB),
$HASP319 DD(3)=(DSNAME=TSO.PROCLIB,
$HASP319 VOLSER=J2SHR2,UNIT=3380)
Add a new data set, TSO.PROCLIB to an existing concatenation
2
$tproclib(proc01),dd(2)=(dsn=)
$HASP319 PROCLIB(PROC01) DD(1)=(DSNAME=SYS1.PROCLIB),
$HASP319 DD(2)=(DSNAME=TSO.PROCLIB,
$HASP319 VOLSER=J2SHR2,UNIT=3380)
Remove the TEST,PROCLIB from an existing concatenation
3
$tproclib(test01),name=proc01
$HASP319 PROCLIB(PROC01)
$HASP319 PROCLIB(PROC01) DD(1)=(DSNAME=SYS1.PROCLIB),
$HASP319 DD(2)=(DSNAME=TSO.PROCLIB,
$HASP319 VOLSER=J2SHR2,UNIT=3380)
Rename the TEST01 concatenation PROC02
4
$tproclib(*),dd(*)=(/dsn=tso.proclib,dsn=test.proclib,unit=,vol=)
$HASP319 PROCLIB(PROC01) DD(1)=(DSNAME=SYS1.PROCLIB),
$HASP319 DD(2)=(DSNAME=TEST.PROCLIB)
$HASP319 PROCLIB(PROC02) DD(1)=(DSNAME=SYS1.PROCLIB),
$HASP319 DD(2)=(DSNAME=TEST.PROCLIB)
Change all PROCLIBs that have a data set name of TSO.PROCLIB to TEST.PROCLIB with no VOLSER= and no UNIT= specified