And if you follow what ought to be standard practice of applying but NEVER accepting a USERMOD (so it can always be RESTOREd if necessary), then the DLIB specified will never be used for storing the modified ICHRDSNT MOD anyhow, since a store into a DLIB only occurs on ACCEPT. Joel C Ewing
On 02/04/2014 09:01 AM, Lizette Koehler wrote: > Venkat, > > When a usermod is created, it is best to allow SMP/E to keep the Dlib > datasets where IBM places them. For some reason your USERMOD is trying to > move the module from AOSBN to ALINKLIB. This is what the message GIM40501E > is telling you. If you want to do that, then you have to change your JCLIN, > and do a UCLIN update to the module so SMP/E places it differently. > > Since this is an IBM Shipped module, you will probably want to leave the DLIB > information as IBM has it coded. That is why I suggested you look at the > listing of the module in SMPE Opt 3. It will tell you where IBM currently > has the module located for TLIB and DLIB functions. > > You may wish to review the SMP/E manual on creating a usermod. > > Or if you are not very familiar with building an SMP/E Usermod, you might ask > if someone has a sample for ICHRDSNT that you can use as a model. There are > times when IBM will move a module in their base system to different > libraries. That is why I always review what I have coded for a USERMOD > against a listing of the module in the SMP/E environment. If something > changes, like a DISTLIB, then I recode according to what IBM has shipped. > > If you go to the manual RACF Installation and Implementation for z/OS V2.1 > and select Appendix D it will provide you with the sample of the usermod you > are trying to do. > > Or I have pasted the appendix here: > > Appendix D. Database Name Table - Sample JCL > This appendix provides a sample SMP/E job to implement the RACF database name > table. > > //ASM1 EXEC PGM=IEV90,PARM=′ DECK,NOOBJECT′ > //SYSLIB DD DISP=SHR,DSN=SYS1.AGENLIB > // DD DISP=SHR,DSN=SYS1.AMODGEN > //SYSUT1 DD UNIT=VIO,SPACE=(CYL,(20,5)) > //SYSUT2 DD UNIT=VIO,SPACE=(CYL,(10,1)) > //SYSUT3 DD UNIT=VIO,SPACE=(CYL,(2,1)) > //SYSPRINT DD SYSOUT=* > //SYSPUNCH DD DSN=&&TEMP,DISP=(,PASS), > // SPACE=(TRK,(1,1)),UNIT=VIO > //SYSIN DD * > PUNCH ′++ USERMOD (RA00002) REWORK(1994200) .′ > PUNCH ′++ VER (Z038) FMID(HRF2210).′ > PUNCH ′++ MOD (ICHRDSNT) DISTLIB(AOSBN) LMOD(ICHRDSNT).′ > ICHRDSNT TITLE ′ RACF DATA SET NAME TABLE′ > ICHRDSNT CSECT , > ICHRDSNT AMODE 31 > ICHRDSNT RMODE 24 > * > DC AL1(1) ONE PRIMARY/BACKUP PAIR > DC CL44′ SYS1.RACFESA′ DSN PRIMARY > DC CL44′ SYS1.RACF.BKUP1′ DSN BACKUP > DC AL1(255) RESIDENT DATA BLOCKS > DC B′10001000′ FLAG BYTE > END > /* > //* > //SMP2 EXEC PGM=GIMSMP,COND=(0,NE) > //SMPCSI DD DISP=SHR,DSN=TOT.SMP.GLOBAL.CSI > //SMPHOLD DD DUMMY > //SMPPTFIN DD DSN=&&TEMP,DISP=(OLD,DELETE) > //LINKLIB DD DISP=SHR,DSN=SYS1.LINKLIB, > // UNIT=SYSALLDA,VOL=SER=RES02A > //SMPCNTL DD * > SET BDY(TGTM02A) . > UCLIN . > REP LMOD(ICHRDSNT) SYSLIB(LINKLIB) . > ENDUCL . > SET BDY(GLOBAL) . > RECEIVE S(RA00002) SYSMODS . > SET BDY(TGTM02A) . > APPLY REDO S(RA00002) . > > > Lizette > > >> -----Original Message----- >> From: IBM Mainframe Discussion List [mailto:[email protected]] On >> Behalf Of Tom Marchant >> Sent: Tuesday, February 04, 2014 6:33 AM >> To: [email protected] >> Subject: Re: RACF USERMOD APPLY >> >> On Tue, 4 Feb 2014 08:13:24 +0530, venkat kulkarni wrote: >> >>> I am getting issue while applying RACF USERMOD for changing >>> RACF NAME TABLE. >>> >> >>> //SMPPTFIN DD DATA,DLM='%%' >>> ++USERMOD(UM21001) REWORK(2014034) . >>> ++VER(Z038) FMID(HRF7790) PRE(CPPDSNT) . >> >> The following JCLIN doesn't make any sense. JCLIN should describe how to >> create the target element from the distribution zone. SMP/E uses this >> information >> along with other information that you provide to create the element at APPLY >> time. >> In this case, you are telling SMP/E to get module ICHRDSNT from LINKLIB and >> store it in LINKLIB. >> >>> ++JCLIN . >>> //UM21001 JOB MVSSP121 >>> //ICHRDSNT EXEC PGM=IEWL, >>> // PARM='LIST,LET,XREF,NCAL' >>> //SYSPRINT DD SYSOUT=* >>> //SYSUT1 DD UNIT=3390,SPACE=(CYL,(1,1)) //SYSLMOD DD >>> DSN=Z.LINKLIB,DISP=SHR //SYSLIN DD * INCLUDE SYSLMOD(ICHRDSNT) >> ENTRY >>> ICHRDSNT NAME ICHRDSNT(R) >>> /* >>> ++SRC(ICHRDSNT) DISTLIB(AORASRC) DISTMOD(ALINKLIB) . >> >> The above MCS specifies that the distribution library for the ICHRDSNT >> module is >> ALINKLIB. >> >>> ICHRDSNT CSECT >>> DC AL1(1) # PRIMARY RACF DATASETS >>> DC CL44'SYS1.RACFP' NAME OF PRIMARY >>> DC CL44'SYS1.RACFB' NAME OF BACKUP >>> DC AL1(255) # RESIDENT BLOCKS (ONE TRACK) >>> DC X'80' UPDATES DUPLICATED ON BACKUP D >>> END >>> %% >>> // >>> >>> APPLY CHECK S(UM21001) REDO . >>> >>> GIM40501E ** THE DISTLIB VALUE (ALINKLIB) SPECIFIED FOR MOD >> ICHRDSNT IN >>> SYSMOD >>> SP21001 DOES NOT MATCH THE DISTLIB VALUE (AOSBN) IN THE >> MOD >>> ENTRY >>> FOR ICHRDSNT. >> >> You have specified that the DISTLIB for ICHRDSNT is ALINKLIB. The MOD entry >> in the DLIB zone says that it is AOSBN. >> >>> GIM22601I APPLY PROCESSING FAILED FOR SYSMOD UM21001. >>> GIM20501I APPLY PROCESSING IS COMPLETE. THE HIGHEST RETURN >> CODE WAS 08. >>> >>> I am not able to find hint to solve this issue. Can anybody help me on this. >> >> Did you look up message GIM40501E? >> >> -- >> Tom Marchant > -MAIN > > -- Joel C. Ewing, Bentonville, AR [email protected] ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
