JCL Query- Urgent.
Moderators: Frank Yaeger, DikDude, Moderator Group
-
- Member
- Posts: 21
- Joined: Wed Jan 21, 2009 2:21 pm
- Location: Hyderabad
JCL Query- Urgent.
Hi All,
Actually I have a set of 12 jcls with me. All the jcls are using some common symbolic parameters, but the values of the paramters will change based on the execution date(still it has to be the same for all the jobs) . All the jobs have to run in sequence i.e. one after the other as they have dependencies on the previous one. So i have embedded the IKJEFT01 steps at the last of each jcl, which will invoke the next job.
Now actually before invoking the execution procedure of all the jobs, everytime i am supposed to change the values of the same parameters in all the jcls, and then start the execution. This is a repetitive task actually. So if someone could tell me please, is there any way so that i can copy all the symbolic parameter override statements somewhere and include it in all the jcls, so that supplying all the values at once will serve the purpose...maybe something like Copybook in COBOL.
Thanks in advance...
Pratik Ranjan.
Actually I have a set of 12 jcls with me. All the jcls are using some common symbolic parameters, but the values of the paramters will change based on the execution date(still it has to be the same for all the jobs) . All the jobs have to run in sequence i.e. one after the other as they have dependencies on the previous one. So i have embedded the IKJEFT01 steps at the last of each jcl, which will invoke the next job.
Now actually before invoking the execution procedure of all the jobs, everytime i am supposed to change the values of the same parameters in all the jcls, and then start the execution. This is a repetitive task actually. So if someone could tell me please, is there any way so that i can copy all the symbolic parameter override statements somewhere and include it in all the jcls, so that supplying all the values at once will serve the purpose...maybe something like Copybook in COBOL.
Thanks in advance...
Pratik Ranjan.
- dbzTHEdinosauer
- Moderator
- Posts: 981
- Joined: Mon Oct 02, 2006 8:31 pm
-
- Member
- Posts: 21
- Joined: Wed Jan 21, 2009 2:21 pm
- Location: Hyderabad
Hi Natarajan,
Actually the symbolics are used in input and output DD statements of all the Jcls. All the I/O dataset names actually contains Execution date and other details which are common across all the Jobs. That's why i thought, if i could find anything like Copybook in JCL, then it would be easy for me to change the symbolics in only one place which will be in effect reflected across all the Jcls.
Thanks.
Actually the symbolics are used in input and output DD statements of all the Jcls. All the I/O dataset names actually contains Execution date and other details which are common across all the Jobs. That's why i thought, if i could find anything like Copybook in JCL, then it would be easy for me to change the symbolics in only one place which will be in effect reflected across all the Jcls.
Thanks.
Pratik Ranjan.
-
- Member
- Posts: 21
- Joined: Wed Jan 21, 2009 2:21 pm
- Location: Hyderabad
Actually i have simply added the step for submitting next job to the end of each job as shown below.
//EXECUTE EXEC PGM=IKJEFT01,COND=(0,NE)
//SYSPRINT DD SYSOUT=*
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
SUB 'IBMPTDV.TWE.JCL(WH02STKH)'
/*
This submits the next job 'WH02STKH' automatically.
//EXECUTE EXEC PGM=IKJEFT01,COND=(0,NE)
//SYSPRINT DD SYSOUT=*
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
SUB 'IBMPTDV.TWE.JCL(WH02STKH)'
/*
This submits the next job 'WH02STKH' automatically.
Pratik Ranjan.
- dbzTHEdinosauer
- Moderator
- Posts: 981
- Joined: Mon Oct 02, 2006 8:31 pm
-
- Moderator
- Posts: 1625
- Joined: Sat Aug 09, 2008 9:02 am
- Location: Mumbai, India
-
- Member
- Posts: 21
- Joined: Wed Jan 21, 2009 2:21 pm
- Location: Hyderabad
Hi Anuj,
Actually in all the JCLs, So many Symbolics are used, but i am just giving one example below.
JCL1:
//JOB CARD
// SET DATASET1='PRATIK.DATA1.090123',DATE=090123
.
.
.
//DD1 DD DSN=&DATASET1.,DISP=...
//DD2 DD DSN=IBMPTDV.D&DATE.,DISP=NEW...
.
.
.
---------------------------------------------------
JCL2:
//JOB CARD
// SET DATASET1='PRATIK.DATA.090123',DATE=090123
.
.
.
//INDATA1 DD DSN=&DATASET1.,DISP=...
//INDATA2 DD DSN=IBMPTDV.D&DATE.,DISP=....
//OUTDATA DD DSN=IBMPTDV.OUTPUT.D&DATE,DISP=NEW...
.
.
---------------------------------------------------------------------------------------------
And similar types are used in all other JCls also. So i just wanted keep all the 'SET' Statements in a dataset and get it copied in all the JCls, so that changing the value at one place will serve the purpose.
Thanks.
Actually in all the JCLs, So many Symbolics are used, but i am just giving one example below.
JCL1:
//JOB CARD
// SET DATASET1='PRATIK.DATA1.090123',DATE=090123
.
.
.
//DD1 DD DSN=&DATASET1.,DISP=...
//DD2 DD DSN=IBMPTDV.D&DATE.,DISP=NEW...
.
.
.
---------------------------------------------------
JCL2:
//JOB CARD
// SET DATASET1='PRATIK.DATA.090123',DATE=090123
.
.
.
//INDATA1 DD DSN=&DATASET1.,DISP=...
//INDATA2 DD DSN=IBMPTDV.D&DATE.,DISP=....
//OUTDATA DD DSN=IBMPTDV.OUTPUT.D&DATE,DISP=NEW...
.
.
---------------------------------------------------------------------------------------------
And similar types are used in all other JCls also. So i just wanted keep all the 'SET' Statements in a dataset and get it copied in all the JCls, so that changing the value at one place will serve the purpose.
Thanks.
Pratik Ranjan.
-
- Moderator
- Posts: 1625
- Joined: Sat Aug 09, 2008 9:02 am
- Location: Mumbai, India
-
- Member
- Posts: 21
- Joined: Wed Jan 21, 2009 2:21 pm
- Location: Hyderabad
-
- Moderator
- Posts: 1625
- Joined: Sat Aug 09, 2008 9:02 am
- Location: Mumbai, India
Hi,
I'm not very sure about your situation yet, however, may be you can try someting like this:
On PROC EXEC level, define something like, say Datalib:
and in the "body" of every PROC, code something like:
You may have differnt SET-varaibles in differnt members, but once they are "included" in all the PROCs, later you just need to change members & all the PROCs will have those changes.
Hope this helps...
I'm not very sure about your situation yet, however, may be you can try someting like this:
On PROC EXEC level, define something like, say Datalib:
Code: Select all
//Procname PROC
// DATALB='Pratik.PROD.DATALIB'
Code: Select all
//include DD DSN=&DATALB(member)
Hope this helps...
Regards,
Anuj
Anuj
-
- Member
- Posts: 21
- Joined: Wed Jan 21, 2009 2:21 pm
- Location: Hyderabad
-
- Moderator
- Posts: 1625
- Joined: Sat Aug 09, 2008 9:02 am
- Location: Mumbai, India
INCLUDE IN JCL
INCLUDE keyword in jcl used as follows...
it will include the member from the pds's.
Code: Select all
//STEP1 EXEC PGM=COBOL1
//STEPLIB INCLUDE MEMBER=pdsmembername
it will include the member from the pds's.
Natarajan
Chennai
Chennai
FREE TUTORIALS
Tutorials
Free tutorials from mainframegurukul
- JCL Tutorial
Covers all important JCL concepts. - Cobol Tutorial
This tutorials covers all Cobol Topics from STRING to COMP-3. - DB2 Tutorial
DB2 Tutorial focuses on DB2 COBOL Programming. - SORT Tutorial
This Tutorial covers all important aspects of DFSORT with examples - CICS Tutorial
This CICS tutorial covers CICS concepts and CICS Basics, CICS COBOL Programming.
Interview
Mainframe Interview questions
- Cobol Interview Questions
50+ Interview Questions - JCL Interview Questions
50+ Interview Questions - DB2 Interview Questions
100+ Interview Questions - CICS Interview Questions
70+ Interview Questions - VSAM Interview Questions
27 Interview Questions
Other References
Mainframe Tools and others
- XPEDITER Reference
Explains how we can debug a program - FILEAID Reference
Explains how to browse , edit and delete datasets - Change Man Reference
Quick Start tutorial on Changeman - Abend Reference
Important Abend codes explained - FaceBook Page
MainframeGurukul FaceBook Page - LinkedIn Page
MainframeGurkul Linkedin Page