|
Perform these actions to update or replace the default exit module:
- Build and install an SMP/E USERMOD to apply the updated source
code for the EDGUX300 exit module.
Include the necessary JCLIN
statements to get the EDGUX300 load module added to the LINKLIB target
library.
You can apply the exit module using an SMP/E USERMOD
as shown in Figure 1. Modify the FMID and PRE to reflect
the release you are running.
Note: The sample EDGUX300 includes
code to show you where to insert your own code to communicate with
your non-IBM tape library software. You must insert into the sample
EDGUX300 exit module the code to retrieve the media type, recording
format, and, optionally, capacity.
- Allocate a user SAMPLIB data set. In Figure 1 the
user SAMPLIB data set is defined as MY.RMM.SRCLIB and allocated to
DD card SRCLIB.
- Copy the shipped EDGUX300 source from SAMPLIB to the user SAMPLIB
and modify, as needed, for your installation.
- SMP/E RECEIVE the USERMOD.
- SMP/E APPLY the USERMOD. Ensure that a DD card exists for the
user SAMPLIB in the APPLY job, or as a DDDEF to SMP/E in the target
zone.
After performing these steps, the modified version of the
EDGUX300 exit module resides in both the user SAMPLIB and SYS1.SAMPLIB.
IBM's original copy is only in the distribution libraries at this
point. If you accept the USERMOD, only the modified version of the
exit module exists. The SMP/E target zone reflects RMID indicators
of VMRMM03 for all of these records:
SAMP EDGUX300 RMID=VMRMM03 SYSLIB=SAMPLIB
SRC EDGUX300 RMID=VMRMM03 SYSLIB=SAMPLIB
MOD EDGUX300 RMID=VMRMM03 LMOD=EDGUX300
LMOD EDGUX300 SYSLIB=LINKLIB
The RMID of
VMRMM03 for the SAMP record prevents IBM service from being installed.
This results in an ID search and notification to you that IBM is the
servicing exit.
Figure 1. Building an SMP/E USERMOD
to apply the updated EDGUX300 exit module//RMMSTUFF JOB ,'SLIP IT IN',MSGCLASS=H,MSGLEVEL=(1,1)
//SMPE EXEC PGM=GIMSMP,
// PARM='PROCESS=WAIT',
// DYNAMNBR=120
//SMPCSI DD DISP=SHR,DSN=MAZRMM3.GLOBAL.CSI
//SMPHOLD DD DISP=SHR,DSN=SAP1.DUMMY.HOLDDATA
//SMPCNTL DD *
SET BDY(GLOBAL) .
RECEIVE .
/*
//SMPPTFIN DD DATA,DLM=##
++USERMOD (VMRMM03) REWORK(2007082) .
++VER (Z038) FMID(HDZ1180) .
++JCLIN .
//EDGUX300 EXEC PGM=IEWL,PARM='LET,NCAL,RENT,REUS,REFR,LIST,XREF'
//SYSLMOD DD DISP=SHR,DSN=SYS1.LINKLIB
//SRCLIB DD DISP=SHR,DSN=MY.RMM.SRCLIB
//AEDGMOD1 DD DISP=SHR,DSN=SYS1.AEDGMOD1
//SYSPRINT DD SYSOUT=*
//SYSLIN DD *
INCLUDE AEDGMOD1(EDGUX300)
ENTRY EDGUX300
NAME EDGUX300(R)
++SRC(EDGUX300) TXLIB(SRCLIB) DISTLIB(ASAMPLIB) .
++SAMP(EDGUX300) TXLIB(SRCLIB) DISTLIB(ASAMPLIB) .
##
/*
//SMPAPPLC JOB ('T,H,IOM,,',SYSPROG),'***IBMUSER***',
// MSGLEVEL=(1,1),MSGCLASS=X,CLASS=A,REGION=0M,
// NOTIFY=&SYSUID
//S1 EXEC PGM=GIMSMP,
// PARM='PROCESS=WAIT',
// DYNAMNBR=120
//SMPCSI DD DISP=SHR,DSN=MAZRMM3.GLOBAL.CSI
//SRCLIB DD DISP=SHR,DSN=RMMTST.MAZ.SOURCE
//SMPCNTL DD *
SET BOUNDARY (MVSTZN)
.
APPLY
JCLINREPORT
SELECT (VMRMM03)
.
- Copy the new exit load module into the LNKLST library.
- Refresh LLA.
- Refresh the exit module by using MVS operator commands.
If DFSMSrmm
is running in a shared environment, you must repeat this step on each
system.
When you use the default exit module, EDGUX300, for the installation
exit EDG_EXIT300, it is loaded and activated as an exit routine, if
it is not already active, by DFSMSrmm when DFSMSrmm is started and
stays loaded and active for the life of the IPL. It can be refreshed
or deleted at any time by using one of the MVS system operator commands.
You can use any load module name for your exit module, because
you use PROGxx in z/OS parmlib, SETPROG, or CSVDYNEX macro
to associate the exit module with the exit. Therefore, you do not
have to use EDGUX300 as the load module name. However, using the default
exit module name simplifies your implementation, because DFSMSrmm
itself ensures that the exit module is loaded and activated.
|