The format of the execute form of the PARTREL macro is:
>>-+-------+--PARTREL--MF=-+-(E,address)-+---------------------->
'-label-' '-(E,(reg))---'
>--+-----------------+--+------------------+-------------------->
'-,DSN=-+-addr--+-' | .-TEST-. |
'-(reg)-' '-,ERASE=-+-YES--+-'
'-NO---'
>--+----------------+--+------------------+--+-------------+---->
| .-PGM-. | | .-ENQ---. | '-,UCB=-(reg)-'
'-,MODE=-+-SUP-+-' '-,TIOT=-+-NOENQ-+-'
>--+----------------------+--+--------------------+------------->
'-,VSAMTYPE=-+-KSDS--+-' '-,VSAMFMT=-+-EXTD-+-'
+-RRDS--+ '-STD--'
+-LDS---+
'-VRRDS-'
>--+-------------------------+--+------------------------+------>
'-,VSAMCLLR=-+-VSAMCLSE-+-' '-,VSAMSEC=-+-BYPASS---+-'
'-NOTVSAM--' '-NOBYPASS-'
>--+----------------------+------------------------------------><
'-,VSAMTRKS=-+-addr--+-'
'-(reg)-'
Except for MODE, all parameters default to the current contents
of the parameter list. The MODE parameter defaults to PGM.
Descriptions
of these parameters include information about DADSM processing. The
descriptions use the term
value to designate the parameter
value passed to DADSM. The value can be:
- Specified as a parameter on the PARTREL macro
- Provided as the parameter's associated value in the parameter
list
- Defined by DADSM from the information provided in the request.
- MF=(E,addr) or (E,(reg))
- Specifies the execute form of the macro and the address of an
existing PARTREL parameter list.
- addr—RX-type address, (reg)—(0-12)
- Specifies the PARTREL parameter list address.
- DSN=addr or (reg)
- Specifies the address of a 44-byte area that contains the data
set name. The name must be left-justified, with any unused bytes
defined as blanks. For a VSAM file, you must specify
the component name, not the cluster name.
- addr—RX-type address, (reg)—(0),
(2-12)
- You must provide a value for DSN.
- ERASE=YES or NO or TEST
- Specifies a residual data erase attribute (see Deleting a Data Set from the VTOC for a description of erase attributes).
ERASE=YES and ERASE=NO are mutually exclusive. The default is ERASE=TEST.
If you specify VSAMTYPE, ERASE is ignored.
- ERASE=YES
- Specifies that the area being released should be erased (overwritten
with zeros) before it is made available for new allocations.
- ERASE=NO
- Specifies that the area should not be erased. This specification
overrides the RACF® erase attribute.
- ERASE=TEST
- Specifies that the associated RACF erase
attribute is to be used.
- MODE=PGM or SUP
- Specifies that PARTREL is requested by a caller in problem program
state (MODE=PGM) or in supervisor state (MODE=SUP). MODE=PGM is the
default.
If the calling program is in supervisor state (and wants
control returned in supervisor state), the value of MODE must be SUP.
If the calling program is in problem program state, the value of MODE
must be PGM.
- TIOT=ENQ or NOENQ
- Specifies the desired SYSZTIOT and SYSDSN ENQ processing within
partial release. The default is ENQ. If you specify VSAMTYPE, TIOT
is ignored.
- TIOT=ENQ
- Specifies that partial release is to do its normal, exclusive
ENQ on SYSZTIOT and SYSDSN. If either of these ENQ requests fails,
PARTREL terminates the request with a return code of X'08'.
- TIOT=NOENQ
- Specifies that the caller has provided the necessary serialization.
If partial release finds that the caller does not have exclusive use
of SYSDSN, PARTREL terminates the request with a return code of X'24'.
When
TIOT=NOENQ is specified and flag PRLTIOTX is set on, the ENQ TEST
is not executed. This is a dangerous option and can cause data corruption. IBM® recommends that you not set
PRLTIOTX.
- UCB=(reg)
- Specifies the address of the UCB for the volume on which the subject
data set resides. The UCB address can be for a captured UCB, or for
an actual UCB above or below the 16MB line. For 31-bit callers, the
high-order byte is part of the UCB address and must be cleared to
zeros if a 24-bit UCB address is being passed. The volume must be
mounted, and you must ensure that it remains mounted. Use the address
of a UCB, not a UCB copy.
- (reg)–(0), (2-12)
- specifies a register containing the UCB address for the device.
- VSAMTYPE=KSDS or ESDS or RRDS or LDS or VRRDS
- Specifies the type of VSAM data set.
Currently, only extended
format VSAM data sets are supported.
If you specify VSAMTYPE,
you must also specify VSAMFMT, VSAMCLLR,
VSAMSEC, and VSAMTRKS.
If you specify VSAMTYPE, the ERASE=
parameter is ignored.
- VSAMTYPE=KSDS
- Specifies a VSAM key-sequenced data set.
- VSAMTYPE=ESDS
- Specifies a VSAM entry-sequenced data set.
- VSAMTYPE=RRDS
- Specifies a VSAM fixed-length relative record data set.
- VSAMTYPE=LDS
- Specifies a VSAM linear data set.
- VSAMTYPE=VRRDS
- Specifies a VSAM variable-length relative record data set.
- VSAMFMT=EXTD or STD
- Specifies the format of the data set.
- VSAMFMT=EXTD
- Specifies that this is an extended format data set.
- VSAMFMT=STD
- Specifies that this is not an extended
format data set. If you specify STD catalog services returns an error
to partial release.
- VSAMCLLR=VSAMCLSE or NOTVSAM
- Specifies the caller.
- VSAMCLLR=VSAMCLSE
- Specifies that the caller is VSAM CLOSE.
- VSAMCLLR=NOTVSAM
- Specifies that the caller is other than VSAM CLOSE.
- VSAMSEC=BYPASS or NOBYPASS
- Specifies if security checking is to be performed
- VSAMSEC=BYPASS
- Specifies that security checking is not to
be performed.
- VSAMSEC=NOBYPASS
- Specifies that security checking is to be performed.
- VSAMTRKS=addr or (reg)
- Specifies the address of a 4-byte area that is used to contain
the number of tracks released for this data set.
You must provide
an address for VSAMTRKS only if you code VSAMTYPE.
- addr—RX-type address, (reg)—(0),
(2-12)
- For a VSAM extended format data set, PARTREL returns a value which
is the sum of all the space released for all the parts of the data
set.