All communication is done using the parameter list. The parameter
list is mapped by the macro EDGPL100 as shown in Installation exit mapping macro: EDGPL100.
The same parameter list area is passed to each exit module associated
with the exit. Each exit module can update the output area of the
parameter list to indicate what processing is required by DFSMSrmm.
Depending on the order of the exit routines, your exit module could
receive the parameter list before any other exit module has processed
it, or it could already have been processed. Before taking a decision
in your exit routine, you should check to see if an earlier exit routine
has already taken a decision. You should be prepared for your decision
to be negated by other exit routine processing. For example, if you
set a VRS management value, but another exit routine requests that
the volume be ignored, DFSMSrmm ignores the volume.
If your exit routine is to build a custom sticky label, do not
assume that the label built in the parameter list area is the default
label created by DFSMSrmm. Instead of modifying the pre-built label,
consider building the complete label.
The parameter list input values are:
- PL100_VALID
- This field defines functions you can request during this call
of the installation exit.
- PL100_CAN_IGNORE
- If set to B'1', you can request that DFSMSrmm ignore
the volume. To see if OPENRULE with an action of IGNORE has already
made an ignore request, check the PL100_INFO_IGNORE_REQUEST_BYRULE
bit.
- PL100_CAN_VRS
- If set to B'1', you can provide a vital record specification
management value for DFSMSrmm to use for this data set.
- PL100_CAN_RACKNO
- If set to B'1', you can provide an external volume serial
number or rack number for DFSMSrmm to use for this volume in any WTO
messages DFSMSrmm updates.
- PL100_CAN_IGNORE_FILE2_TON
- If set to B'1', you can request that DFSMSrmm record
the data set details only for the first file on a tape volume.
- PL100_CAN_COPYFROM
- If set to B'1', you can request to notify DFSMSrmm that
the data set being created is being copied from another.
- PL100_CAN_POOL
- If set to B'1', you can provide a specific pool name
for DFSMSrmm to use for this volume in any WTO messages DFSMSrmm updates.
Also the pool name is used to validate that a correct scratch volume
is mounted for a request.
- PL100_ITS_CLOSE
- If set to B'1', this indicates that DFSMSrmm called EDG_EXIT100
because a tape data set was closed or an end-of-volume condition occurred.
- PL100_CAN_RETMET
- If set to B'1', you can request to set the volume retention
method when the first file on the volume is written.
- PL100_VALID2
- This field defines functions you can request during this call
of the installation exit.
- PL100_CAN_VRSELEXCLUDE
- If set to B'1', you can request to set the VRSELEXCLUDE
attribute for a data set.
- PL100_REQ_VOLSER
- This field contains one of: PRIVAT, SCRTCH or a volume serial
number. For a nonspecific request PL100_REQ_VOLSER can contain either
PRIVAT or SCRTCH. For a specific request PL100_REQ_VOLSER contains
the actual volume serial number requested.
- PL100_MOUNT_VOLSER
- This field contains the volume serial number of the volume mounted
to satisfy this request. This volume serial number is only available
when a data set on the volume is opened or closed.
- PL100_WTOPTR
- This field contains the address of the WTO message that has been
intercepted by MNTMSG processing. The address is zero during OPEN
processing. See the PL100_WTOPTR field for information on the operator
message being updated.
- PL100_JFCBPTR
- This field can contain the address of the JFCB copy or is set
to zero. You can use it to locate the expiration date field JFCBXPDT.
You can determine if the user specified an expiration date rather
than a retention period by checking the JFCB for the JFCBEXP flag.
If the exit is called during OPEN processing, the JFCB address is
provided. During MNTMSG processing the JFCB address is set to zero
and no JFCB is available.
- PL100_POOL
- When PL100_JFCBPTR is zero and PL100_CAN_POOL is set to B'1', this field contains the scratch pool that DFSMSrmm has already
determined should be used for this request. It is determined using
the VLPOOL definitions that you specify in the DFSMSrmm parmlib member.
If you do not provide a replacement value and set the PL100_SET_POOL
flag, this is the pool that DFSMSrmm uses.
- PL100_LABINFO
- When PL100_ITS_CLOSE is set to B'1', this field points
to a data area mapped by PL100_LABDS. The data area contains information
about the volume and file being processed.
- PL100_ACCODE
- This field contains either the value of the JCL specified ACCODE
parameter or blanks if the ACCODE is specified in the reduced form
'ACCODE=' or if the JCL does not contain ACCODE. The field can be
1 to eight characters as described in z/OS MVS JCL Reference. The first character is the ISO/ANSI accessibility code.
The remaining characters can be any characters you choose. If the
ACCODE value specifies a special value, then your exit module can
process the ACCODE value rather than the special date in the EXPDT
keyword if it exists.
- PL100_INFO
- This field defines additional information.
- PL100_INFO_IGNORE
- If set to B'1' The volume is to be ignored by the EDG_EXIT100
installation exit.
- PL100_INFO_IGNORE_REQUEST_BYRULE
- If set to B'1' The volume is to be ignored based on OPENRULE
with an action of IGNORE.
- PL100_INFO_NOTRMM
- If set to B'1', the volume is not defined to DFSMSrmm.
This is only set at CLOSE or EOV time.
- PL100_INFO_DISPDD
- If set to B'1', a disposition file was found and has
been processed for this DD name.
- PL100_INFO_DISPLAB
- If set to B'1', the prepared label passed to the exit
was requested by an entry in a disposition control file.
- PL100_INFO_CMOVE
- If set to B'1', a confirm must be performed and the
location requested is set as the volume's destination, not the location.
- PL100_INFO_USERDATA
- If set to B'1', userdata was provided from the disposition
file. The user data has been included in the default label created
by DFSMSrmm processing.
- PL100_INFO_MTL
- If set to B'1', indicates that the allocated tape drive
is a manual tape library tape drive and a storage group has been set
by SMS ACS processing. DFSMSrmm uses the storage group name as the
specific scratch pool unless you select a specific scratch pool or
request that DFSMSrmm ignore the storage group name.
- PL100_ACEROPTR
- This field contains the address of the ACERO system control block
during pre-ACS processing.
- PL100_LAB_USERDATA
- This field contains the user data from the disposition processing
file for use in sticky labels.
- PL100_LABPTR
- This field contains the address of the sticky label prepared by
DFSMSrmm.
- PL100_LOCATION
- This field contains the name of the location specified in the
disposition file.
- PL100_LOCTYPE
- This field contains the type of the location.
The parameter list can be updated as follows:
- PL100_FUNCTION
- Use this field to request functions of DFSMSrmm
- PL100_SET_IGNORE
- Set the PL100_SET_IGNORE bit to indicate that you want this volume
ignored until the current file reaches end-of-volume or is closed.
- PL100_SET_IGNORE_MOUNTED
- Set the PL100_SET_IGNORE_MOUNTED bit to indicate that you want
this volume ignored based on the mounted volser until the current
file reaches end-of-volume or when the current volume is closed.
- PL100_SET_IGNORE_REQUESTED
- Set the PL100_SET_IGNORE_REQUESTED bit to indicate that you want
this volume ignored, based on the requested volser until the current
file reaches end-of-volume or when the current volume is closed.
- PL100_SET_IGNORE_FILE2_TON
- Set the PL100_SET_IGNORE_FILE2_TON bit to indicate that DFSMSrmm
is only to record data set details for the first file on the tape
volume.
- PL100_SET_POOL
- Set the PL100_SET_POOL bit to indicate that you want to use a
specific pool for the current non-specific volume request. When you
set PL100_SET_POOL and provide a pool prefix for a tape drive in a
manual tape library, DFSMSrmm does not use the storage group assigned
by SMS ACS processing.
- PL100_SET_ACLOFF
- Set the PL100_SET_ACLOFF bit to indicate that you want DFSMSrmm
to disable the cartridge loader for this request.
- PL100_SET_NOLABEL
-
- Set the PL100_SET_NOLABEL bit to B'1' to suppress a label
requested by a disposition control file. See PL100_INFO_DISPLAB.
- Set the PL100_SET_NOLABEL bit to B'0' when DFSMSrmm has
created a default label other than through a disposition control file,
and you would like the label to be produced.
The other functions you can request are determined
by the presence of data in the output fields.
- PL100_FUNCTION2
- You can use this field to change some of the processing decisions
that were made during disposition control processing. DFSMSrmm uses
the PL100_LOCATION value to set the destination location or the current
location. When DFSMSrmm sets the destination location, you must confirm
the volume move later using the RMM CHANGEVOLUME subcommand. See Setting up DFSMSrmm disposition processing for more information about disposition
control.
- PL100_SET_CMOVE
- Set PL100_SET_CMOVE to B'1' when you want to confirm
the volume move at a later time. DFSMSrmm uses the PL100_LOCATION
value to set the volume destination and not the current location.
If the destination is bin-managed, DFSMSrmm sets the required location.
DFSMSrmm assigns a bin number to the volume during storage location
management processing.
- PL100_SET_NOCMOVE
- Set PL100_SET_NOCMOVE to B'1' and DFSMSrmm confirms the
volume move immediately. DFSMSrmm uses the PL100_LOCATION value to
set the current location when it does not need to assign a bin number
for the volume.
- PL100_SET_IGNORE_SGNAME
- Set this field to B'1' when you want to use DFSMSrmm
system-based pooling instead of the storage group name set by SMS
ACS processing when the tape drive is in a manual tape library.
- PL100_SET_NOTBYPASS_SAFRC8
- Set this bit to B'1' to turn off the DFSMSrmm function
that uses the successful IGNORE authorization to change SAF return
code 8 to 0. Set this bit on only if PL100_SET_IGNORE or PL100_SET_IGNORE_MOUNTED
or PL100_SET_IGNORE_REQUESTED is set on.
- PL100_SET_RETMET
- Set this bit to B'1' to indicate that the volume's retention
method has been set to the value defined in PL100_RETENTIONMETHOD.
- PL100_SET_COPYFROM
- Set this bit to B'1' to indicate that the data set being
created is being copied from another.
- PL100_SET_VRSELEXCLUDE
- Set this bit to B'1' to indicate that the data set being
created has the attribute VRSELEXCLUDE set.
- PL100_JFCBPTR
- If a JFCB address was provided as input, set the JFCB expiration
date field to the new expiration date value you want DFSMSrmm to use
for this data set. You can update the JFCB expiration date even if
you do not provide a vital record specification management value.
Recommendation: Zero the expiration date field in the JFCB
copy to allow DFSMSrmm to calculate a default expiration date.
- PL100_VRS
- Set the DFSMSrmm vital record specification management value you
have selected. The values you use in this field should correspond
to the RMM ADDVRS DSNAME subcommands you have used. The vital record
specification management value you specify is only used during inventory
management vital records processing once it has been established that
use of the data set name has not produced a match.
Only update
this field if the PL100_CAN_VRS flag is set, as it is only when this
flag is set that DFSMSrmm makes use of the value you specify. DFSMSrmm
records the vital record specification management value you specify
in the control data set when:
- A new data set is created
- An existing data set is rewritten with DISP=OLD
- A data set not yet recorded by DFSMSrmm is read
When an existing data set is extended, and the data
set already has a vital record specification management value, DFSMSrmm
ignores the new value you specify and propagates the existing vital
record specification management value.
In all other cases,
the vital record specification management value you specify is not
used by DFSMSrmm.
- PL100_RACKNO
- You can provide a 6 character value for DFSMSrmm to use as the
rack number or an external volume serial number for adding to the
mount messages that DFSMSrmm intercepts and updates. Provide this
value when requesting that DFSMSrmm ignores the volume. This helps
your operators retrieve the correct volume.
Only update this field
if the PL100_CAN_RACKNO flag is set, as it is only when this flag
is set that DFSMSrmm makes use of the value you specify.
- PL100_POOL
- You can use this field to provide a specific pool name to be used
with a non-specific output request.
Provide a 6 character pool
identifier for DFSMSrmm to use for adding to the mount messages and
tape drive display requests that DFSMSrmm intercepts and updates and
for use during volume validation. Provide this value when requesting
that DFSMSrmm use a specific scratch pool. This helps your operators
retrieve the correct volume.
Only update this field if the
PL100_CAN_POOL flag is set. Also set PL100_SET_POOL to B'1', as it is only when this flag is set that DFSMSrmm makes use of
the value you specify.
If your exit module selects a pool that
does not meet the pool naming conventions, DFSMSrmm uses the DFSMSrmm
selected pool, and ignores the setting of the PL100_SET_ACLOFF flag.
If your exit module selects a pool that does not match a VLPOOL
prefix value, all volumes that are mounted are rejected.
- PL100_LOCATION
- The value is set by DFSMSrmm depending on the keyword LOC=, or
OUT= used in the disposition control file. You can change the value
during EDG_EXIT100 processing and DFSMSrmm validates it on return
from the exit.
- PL100_RETENTIONMETHOD
- Set this field to 0 or 1 for:
- PL100_RM_VRSEL EQU 0 RETENTION METHOD VRSEL
- PL100_RM_EXPDT EQU 1 RETENTION METHOD EXPDT
- PL100_COPYFROM_DSN
- Set this field to the name of the source data set.
- PL100_COPYFROM_VOLSER
- Set this field to the source volume number.
- PL100_COPYFROM_DSEQ
- Set this field to the source data set sequence number.
- PL100_COPYFROM_OWNER
- Set this field if you want to specify the owner of the volume
being written to. It can be applied only when the first file on the
first volume of a multivolume set is written, and will be propagated
by DFSMSrmm during EOV to any additional volumes in the set. This
field is optional for the COPYFROM function.