MVSFORUMS.com Forum Index MVSFORUMS.com
A Community of and for MVS Professionals
 
 FAQFAQ   SearchSearch   Quick Manuals   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

How do I include Easytrieve Macros in JCL

 
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Application Programming
View previous topic :: View next topic  
Author Message
mvsgal
Beginner


Joined: 22 Feb 2006
Posts: 2
Topics: 1

PostPosted: Wed Feb 22, 2006 6:14 am    Post subject: How do I include Easytrieve Macros in JCL Reply with quote

Hi,

I'm trying to include my own Easytrieve macro library in my JCL job so Easytrieve will pick up my versions of the macros before it looks for the default ones. My macro library is a normal PDS.

So far I've tried using the Steplib (which I'm sure is the way to do it) and I've seen an example in the Application Guide that uses a PANDD1 DD statement for the macro library. However, Easytrieve still doesn't expand my macro include statements (e.g. %MYMACRO).

Can anyone enlighten me as to what I need to include in my JCL or code, so Easytrieve can find my macros?

Debbie

An example of an include statement that I'm using is:
Code:

%DL1CODES


The message that appears on each include statement is:
Code:

*******B006 MACRO SYSTEM - PDS , ERROR IN MACRO FILE


Here's an example of my JCL (with the sensitive info replaced):
Code:

//MYJOBNME JOB (ACCT,CODE),
//         'MYJOBNAME',
//         CLASS=M,
//         MSGCLASS=A,
//         NOTIFY=&SYSUID
//*
//PROCLIB  JCLLIB ORDER=MY.EZT.PROCLIB
//*
//DELFILE  EXEC PGM=IEFBR14
//MSNBRK   DD DSN=MY.DATA.FILE,
//            DISP=(MOD,DELETE,DELETE),
//            SPACE=(TRK,(1,1),RLSE)
//*
//EZKEYJOB EXEC DLIEZT,
//            MBR=EZTPA00,
//            PSB=DLIEZT,
//            TIME=1440
//*PANDD1   DD DISP=SHR,DSN=MY.EZT.COPYLIB  * <== This is what I used for the PANDD
//SYSPRINT DD SYSOUT=*
//SYSOUT   DD SYSOUT=*
//SYSIN    DD DISP=SHR,DSN=MY.EZT.PROGRAMS(MYEZPROG)
//PARMFILE DD DISP=SHR,DSN=MY.MSNBRK.PARMS
//MSNBRK   DD DSN=MY.DATA.FILE,
//            DISP=(NEW,CATLG,DELETE),
//            SPACE=(TRK,(50,50),RLSE),
//            DCB=(LRECL=94,RECFM=FB)


The proc is:
Code:

//DPDSEZK  PROC PROJ='MYPROJ',               * DATABASE PROJECT       *
//             DLI=DLI,                      * BATCH REGION TYPE      *
//             MBR=,                         * APPLICATION PROGRAM    *
//             PSB=,                         * PSB NAME               *
//             BUF=7,                        * BUFFER POOL SIZE DEFN. *
//             SPIE=0,                       * SPIE OPTION            *
//             TEST=0,                       * USER'S CALL LIST CHECK *
//             EXCPVR=0,                     * BUFF PL LNG TRM PGE FIX*
//             RST=0,                        * UCF RESTART            *
//             PRLD=,                        * PROCLIB SUFFIX         *
//             SRCH=0,                       * SEARCH INDICATOR       *
//             CHKPTID=,                     * CHECKPOINT ID.         *
//             LOGA=0,                       * LOG ACCESS METHOD      *
//             FMTO=T,                       * FORMATTED DUMP OPTION  *
//             IMSID=,                       * SUBSYSTEM IDENTIFIER   *
//             SWAP=,                        * ADDRESS SPACE SWAPPABLE*
//             DBRC=Y,                       * DBRC SWITCH            *
//             IRLM=,                        * RESOURCE LOCK MANAGER  *
//             IRLMNM=,                      * IRLM SUBSYSTEM         *
//             BKO=N,                        * DYNAMIC BACKOUT        *
//             RGN=6M,                       * REGION SIZE            *
//             LOG='*',                      * SYSOUT CLASS           *
//             JOBNAME=JOBNAME,              * JOBNAME FOR LOG FILE   *
//             STPNAME=STPNAME,              * STEPNAME FOR LOG FILE  *
//             DFSVSAM=DLIVSMP,              * DFSVSAMP MEMBER NAME   *
//             LOGDMY='DUMMY,',              * LOG DUMMY              *
//             LOGALU=CYL,                   * LOG ALLOCATION UNIT    *
//             LOGPRI=5,                     * PRIMARY SPACE FOR LOG  *
//             LOGSEC=50,                    * 2NDARY SPACE FOR LOG   *
//             MON=N,                        * DB MONITOR             *
//             MONDMY='DUMMY,',              * DB MONITOR DUMMY       *
//             MONALU=CYL,                   * MONITOR ALLOC UNIT     *
//             MONPRI=5,                     * PRIMARY SPACE FOR MON  *
//             MONSEC=5                      * 2NDARY SPACE FOR MON   *
//*
//DFSRRC00 EXEC PGM=DFSRRC00,REGION=&RGN,
//             PARM=(&DLI,&MBR,&PSB,&BUF,
//             &SPIE&TEST&EXCPVR&RST,&PRLD,
//             &SRCH,&CHKPTID,&MON,&LOGA,&FMTO,
//             &IMSID,&SWAP,&DBRC,&IRLM,&IRLMNM,
//             &BKO)
//STEPLIB  DD  DISP=SHR,DSN=IMS.IFP1.RESLIB
//         DD  DISP=SHR,DSN=IMS.IFP1.MDALOAD
//         DD  DISP=SHR,DSN=MY.DATAVAN.PGMLIB
//         DD  DISP=SHR,DSN=MY.PDS.LOAD
//         DD  DISP=SHR,DSN=MY.EZT.COPYLIB   * <== This is my macro library
//DFSRESLB DD  DISP=SHR,DSN=IMS.IFP1.RESLIB
//IMS      DD  DISP=SHR,DSN=IFP1.PDS.DPDS500.DBDLIB
//         DD  DISP=SHR,DSN=IFP1.PDS.DPDS500.PSBLIB
//DFSVSAMP DD  DISP=SHR,DSN=IFP1.PDS.DPDS500.VSAMBUF(&DFSVSAM)
//DPSPRINT DD  SYSOUT=&LOG
//PRINTDD  DD  SYSOUT=&LOG
//SYSOUT   DD  SYSOUT=&LOG
//SYSPRINT DD  SYSOUT=&LOG
//*********************************************************************
//*********************************************************************
//*        LOG DATASET ALLOCATION                                     *
//*********************************************************************
//IEFRDER  DD &LOGDMY.DSN=&PROJ..LOG.&JOBNAME..&STPNAME(+1),
//            DISP=(NEW,CATLG,CATLG),
//            UNIT=TEMP,
//            SPACE=(&LOGALU,(&LOGPRI.,&LOGSEC.),RLSE),
//             DCB=(DSCB.GDGMOD,BLKSIZE=23200,BUFNO=5)
//*********************************************************************
//*        MONITOR DATASET USED IF MON=Y AND MONDMY=                  *
//*********************************************************************
//IMSMON   DD &MONDMY.DSN=&PROJ..MON.&JOBNAME..&STPNAME(+1),
//            DISP=(NEW,CATLG),
//            UNIT=TEMP,
//            SPACE=(&MONALU,(&MONPRI.,&MONSEC.),RLSE),
//             DCB=(DSCB.GDGMOD,BLKSIZE=2048,LRECL=256,RECFM=VBS)
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12372
Topics: 75
Location: San Jose

PostPosted: Wed Feb 22, 2006 10:40 am    Post subject: Reply with quote

mvsgal,

Just concatenate your macro library first to the concatenation list of Pandd. Also make sure that your macro pds has the following properties.

Code:

DCB=(LRECL=80,RECFM=FB,BLKSIZE=3120)


ex:

Code:

//PANDD    DD DSN=your pds with macros,DISP=SHR   
//         DD DSN=your system macros pds,DISP=SHR


Hope this helps...

Cheers

Kolusu
_________________
Kolusu
www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
mvsgal
Beginner


Joined: 22 Feb 2006
Posts: 2
Topics: 1

PostPosted: Wed Feb 22, 2006 11:24 am    Post subject: Reply with quote

Kolusu,

That works a treat. Thank you.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Application Programming All times are GMT - 5 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


MVSFORUMS
Powered by phpBB © 2001, 2005 phpBB Group