View previous topic :: View next topic
Author
Message
Rajani77 Warnings : 1 New User Joined: 14 Jul 2005Posts: 3 Location: Bangalore
Hi !
Im Rajani..
I am having 5 job steps in my Jcl? I want to execute 3rd step only? How u will do this Using COND and Without COND parameter?
If anyone knows plz let me know?
Back to top
parikshit123 Active User Joined: 01 Jul 2005Posts: 269 Location: India
Hi Rajni,
You can put restart=(procname.stepname) in jcl job card itself.
But that will start your job from that step. I don't know how to make the job run only that step.
Back to top
umed New User Joined: 13 May 2005Posts: 38
Hi ,
for this purpose u can use IEBEDIT utility . See the sample code given below which will help u :
//JOBNAME JOB (2404),TEST,MSGLEVEL=(1,1),CLASS=K,MSGCLASS=X,
// NOTIFY=&SYSUID
//STEP0001 EXEC PGM=IEBEDIT
//SYSUT1 DD DISP=SHR,DSN=MYDSN.TEST.JCL(MEMBER)
//SYSUT2 DD SYSOUT=(*,INTRDR)
//SYSPRINT DD SYSOUT=*
//SYSIN DD DATA
EDIT TYPE=INCLUDE,STEPNAME=(S3)
/*
Here MYDSN.TEST.JCL(MEMBER) is the jcl of which step 3 is to be executed
Let me know if u have any concern
Regards,
Umed
Back to top
priyesh.agrawal Senior Member Joined: 28 Mar 2005Posts: 1448 Location: Chicago, IL
Hi umed,
I tried this code....& got following messages.....
Code:
EDIT TYPE=INCLUDE,STEPNAME=(S098)
IEB010I INVALID OPERATION CODE
IEB024I 4 WAS HIGHEST SEVERITY CODE
& the step was not executed.
Can you help me finding error.
Regards,
Priyesh.
Back to top
lalita New User Joined: 03 Jul 2005Posts: 8
HI
to execute only step#3 you just give restart=step#3 it will start to execute step#3 and give null statement // at the end of step#3 then it will terminate the job their itself.
Correct me if i am wrong
lalita
Back to top
parikshit123 Active User Joined: 01 Jul 2005Posts: 269 Location: India
Hi, Rajni,
I have found out two ways to handle the situation,
A Suppose there are 10 steps in the PROC and you want to execute only one step, say STEP05. In this case:
//JOBNAME1 JOB (ABC,0000),NOTIFY=&SYSUID
//PROCSTMT JCLLIB ORDER=ABC.XYZ
//PROCSTEP EXEC PROCNAME,
// COND.STEP01=(0,LE),
// COND.STEP02=(0,LE),
// COND.STEP03=(0,LE),
// COND.STEP04=(0,LE),
// COND.STEP06=(0,LE),
// COND.STEP07=(0,LE),
// COND.STEP08=(0,LE),
// COND.STEP09=(0,LE),
// COND.STEP10=(0,LE)
Because of the COND parameter, all the 9 steps will be skipped since this condition will alwayz be true.
In this case, you will not be modifing the PROC at all. Just the JCL.
B
Also we can use the IEBEDIT utility
//STEP0001 EXEC PGM=IEBEDIT
//SYSUT1 DD DISP=SHR,DSN=myJCL
//SYSUT2 DD SYSOUT=(*,INTRDR)
//SYSPRINT DD SYSOUT=*
//SYSIN DD DATA
EDIT TYPE=INCLUDE,STEPNAME=(mystep1,mystep2,...,)
/*
Back to top
withnams New User Joined: 06 Jul 2005Posts: 26 Location: Chennai
Also you can specify the RESTART parameter in the JOBCARD along with the COND parameter...
//.......RESTART=(PROC1.STEP5),COND=(0,LE)
in this case only STEP5 will be executed, steps before and after that will not be executed.
Back to top
Gops New User Joined: 21 Jul 2005Posts: 23
Hi Priyesh,
I aslo got the same error, later I made slight modification in the code at SYSIN DD DATA , Instream(SYSIN) data should start from col 2 onwards.
Now its working fine.
//JOBNAME JOB (2404),TEST,MSGLEVEL=(1,1),CLASS=K,MSGCLASS=X,
// NOTIFY=&SYSUID,COND=(0,LE) ==> also ADDED COND PARM
//STEP0001 EXEC PGM=IEBEDIT
//SYSUT1 DD DISP=SHR,DSN=MYDSN.TEST.JCL(MEMBER)
//SYSUT2 DD SYSOUT=(*,INTRDR)
//SYSPRINT DD SYSOUT=*
//SYSIN DD DATA
EDIT TYPE=INCLUDE,STEPNAME=(S3) ==> moved 2 col right,
/*
plesae check with the modification and write back to me if you have any concerns.
Cheers,
Gops
Back to top
subhash gowda Warnings : 1 New User Joined: 02 Jun 2005Posts: 12
hi rajini
you can do like this
in job statment give Restart=stepname, then the job will start form that step, at the end of that step give sysabend and sysdump statement with a dummy dataset, then after the excuation of that step job will end. i think this will works, if not give me proper ans
Back to top
Hanfur Active User Joined: 21 Jun 2006Posts: 104
IEBEDIT works good when we have only one JCL with all the steps inside to that but failed to execute when tried to submit a step which is inside to a PROC.
For example I was having 10 steps in PROC which was executed using a RUNJCL .Using IEBEDIT I tried to execute the step01 alone.
Both of the below JCL's failed to execute a step inside a PROC.
//STEP01 EXEC PGM=IEBEDIT
//SYSUT1 DD DISP=SHR,DSN=XXXXX.SSSS.AP.TSTS(MYRUNJCL)
//SYSUT2 DD SYSOUT=(A,INTRDR)
//SYSPRINT DD SYSOUT=*
----+----1----+----2----+----3----+----4----+----5----+----6
/SYSIN DD *
EDIT TYPE=INCLUDE,STEPNAME=STEP01<==PROC STEP
/*
and
//STEP01 EXEC PGM=IEBEDIT
//SYSUT1 DD DISP=SHR,DSN=XXXXX.SSSS.AP.TSTS(MYRUNJCL)
//SYSUT2 DD SYSOUT=(A,INTRDR)
//SYSPRINT DD SYSOUT=*
----+----1----+----2----+----3----+----4----+----5----+----6
/SYSIN DD *
EDIT TYPE=INCLUDE,STEPNAME=PROC.STEP01
/*
Any suggestions?
-Han.
Back to top
Please enable JavaScript!