View previous topic :: View next topic
|
Author |
Message |
vivid8474
New User
Joined: 13 Mar 2008 Posts: 6 Location: CN
|
|
|
|
This job is to update a record in WISCOB5.INPUT(CTYFILE).
I'd like to replace the first record "WUHAN" with "HANKOU". But the job failed to run with RC=4.
What's the reason? How to make this job executed successfully?
WISCOB5.INPUT(CTYFILE)
---------------------------------------------------------------------------
WUHAN 00010002
SHANGHAI 00020002
GUANGZHOU 00030002
HANGZHOU 00040002
XI'AN 00050002
DALIAN 00060002
BEIJING 00070002
CHENGDU 00080002
---------------------------------------------------------------------------
JCL
----------------------------------------------------------------------------
//VUPDTE JOB '','VIVI',CLASS=A,MSGCLASS=X,MSGLEVEL=(1,1),
// NOTIFY=&SYSUID
//CHANGE EXEC PGM=IEBUPDTE
//SYSUT1 DD DSN=WISCOB5.INPUT,DISP=OLD
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
./ CHANGE NAME=CTYFILE,UPDATE=INPLACE
WUHAN 00010002
HANKOU 00010002
./ENDUP
----------------------------------------------------------------------------
JOB LOG
----------------------------------------------------------------------------
******************* TOP OF DATA *************************
SYSIN NEW MASTER
./ CHANGE NAME=CTYFILE,UPDATE=INPLACE
WUHAN 00010002
IEB807I INVALID OPERATION.
IEB818I HIGHEST CONDITION CODE WAS 00000004
IEB819I END OF JOB IEBUPDTE.
******************BOTTOM OF DATA **************************
---------------------------------------------------------------------------- |
|
Back to top |
|
|
CICS Guy
Senior Member
Joined: 18 Jul 2007 Posts: 2146 Location: At my coffee table
|
|
Back to top |
|
|
Bill Dennis
Active Member
Joined: 17 Aug 2007 Posts: 562 Location: Iowa, USA
|
|
|
|
Your SYSIN should only have the new record, not both records. |
|
Back to top |
|
|
vivid8474
New User
Joined: 13 Mar 2008 Posts: 6 Location: CN
|
|
|
|
Now I have updated my this job as the below two kinds
---------------------------------------------------------------------------------
//VUPDTE JOB '','VIVI',CLASS=A,MSGCLASS=X,MSGLEVEL=(1,1),
// NOTIFY=&SYSUID
//CHANGE EXEC PGM=IEBUPDTE,PARM=MOD
//SYSUT1 DD DSN=WISCOB5.INPUT,DISP=OLD
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
./ CHANGE NAME=CTYFILE,UPDATE=INPLACE
./ NUMBER SEQ1=ALL,NEW1=00010001,INCR=00000001
HANKOU 00010001
./ENDUP
---------------------------------------------------------------------------------
//VUPDTE JOB '','VIVI',CLASS=A,MSGCLASS=X,MSGLEVEL=(1,1),
// NOTIFY=&SYSUID
//CHANGE EXEC PGM=IEBUPDTE,PARM=MOD
//SYSUT1 DD DSN=WISCOB5.INPUT,DISP=OLD
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
./ CHANGE NAME=CTYFILE,UPDATE=INPLACE
./ NUMBER SEQ1=ALL,NEW1=00010001,INCR=00000001
WUHAN 00010001
HANKOU 00010001
./ENDUP
---------------------------------------------------------------------------------
But the RC is still 4, the log as the below:
---------------------------------------------------------------------------------
********************************* TOP OF DATA **********
SYSIN NEW MASTER
./ CHANGE NAME=CTYFILE,UPDATE=INPLACE
./ NUMBER SEQ1=ALL,NEW1=00010001,INCR=00000001
HANKOU
IEB807I INVALID OPERATION.
IEB818I HIGHEST CONDITION CODE WAS 00000004
IEB819I END OF JOB IEBUPDTE.
******************************** BOTTOM OF DATA ********
--------------------------------------------------------------------------------- |
|
Back to top |
|
|
gcicchet
Senior Member
Joined: 28 Jul 2006 Posts: 1702 Location: Australia
|
|
|
|
Hi,
try this
Code: |
./ CHANGE NAME=CTYFILE,UPDATE=INPLACE
./ NUMBER SEQ1=ALL,NEW1=00010000,INCR=00000010
HANKOU 00010010
./ ENDUP
|
Gerry |
|
Back to top |
|
|
superk
Global Moderator
Joined: 26 Apr 2004 Posts: 4652 Location: Raleigh, NC, USA
|
|
|
|
This is interesting. I don't think I've ever seen someone actually use IEBUPDTE like this, instead of an edit or SORT. |
|
Back to top |
|
|
gcicchet
Senior Member
Joined: 28 Jul 2006 Posts: 1702 Location: Australia
|
|
|
|
Hi,
this is how JCL, PROCS were updated in the good old punch card days (haha)
Gerry |
|
Back to top |
|
|
vivid8474
New User
Joined: 13 Mar 2008 Posts: 6 Location: CN
|
|
|
|
Problem still exists with RC=4
Now this job is updated to as the below:
Code: |
//CHANGE EXEC PGM=IEBUPDTE,PARM=MOD
//SYSUT1 DD DSN=WISCOB5.INPUT,DISP=OLD
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
./ CHANGE NAME=CTYFILE,UPDATE=INPLACE
./ NUMBER SEQ1=ALL,NEW1=00010000,INCR=00000010
HANKOU 00010000
./ENDUP
|
RC = 4, job log as the following:
Code: |
SYSIN NEW MASTER
./ CHANGE NAME=CTYFILE,UPDATE=INPLACE
./ NUMBER SEQ1=ALL,NEW1=00010000,INCR=00000010
WUHAN
HANKOU
./ENDUP
IEB805I CONTROL STATEMENT ERROR.
IEB818I HIGHEST CONDITION CODE WAS 00000004
IEB819I END OF JOB IEBUPDTE.
|
|
|
Back to top |
|
|
gcicchet
Senior Member
Joined: 28 Jul 2006 Posts: 1702 Location: Australia
|
|
|
|
Hi,
can you please post the JCL using Code.
Gerry |
|
Back to top |
|
|
Bill Dennis
Active Member
Joined: 17 Aug 2007 Posts: 562 Location: Iowa, USA
|
|
|
|
I don't know why you've added parms to reassign SEQ numbers? If you're only replacing one line of the member, remove the NEW1 and INCR options. |
|
Back to top |
|
|
gcicchet
Senior Member
Joined: 28 Jul 2006 Posts: 1702 Location: Australia
|
|
|
|
Hi Vivid8474,
the problem is with the ./ENDUP it requires a space after the ./ as im my example previously mentioned. ie.
Gerry |
|
Back to top |
|
|
vivid8474
New User
Joined: 13 Mar 2008 Posts: 6 Location: CN
|
|
|
|
ok. it got solved.
Thx, all~~ |
|
Back to top |
|
|
nandhu
New User
Joined: 07 Mar 2006 Posts: 7 Location: chennai
|
|
|
|
Hi,
One of our production job has the following step and it ended with RC 04.
JOB:
//INSTP30 EXEC PGM=IEBUPDTE,
// PARM=MOD
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=H1279AF.CODE.COMPARE.PROD,DISP=OLD
//SYSUT2 DD DSN=H1279AF.CODE.COMPARE.PROD,DISP=OLD
//SYSIN DD DSN=H1279AF.IEBUPDTE.INPUT,DISP=OLD
/*
SYSIN:
./ CHANGE NAME=PUV07I,UPDATE=INPLACE
ISRSUPC
AAAAAAA
./ ENDUP
The below is the sysprint:
.SARPAGE 10 DS=SYSPRINT.INSTP30 . /0000134
. SYSIN NEW MASTER
. ./ ENDUP
.IEB805I CONTROL STATEMENT ERROR.
.IEB818I HIGHEST CONDITION CODE WAS 00000004
.IEB819I END OF JOB IEBUPDTE.
I refered to one of the previous topic and as per the above discussion, it was mentioned there should be one space before and after ENDUP in the sysin card. The sysin we use has space and still we get the rc 04.
Could anyone please help us in resolving this error? |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
Hello,
It will help us help you if you post output that is from the posted input. . .
The "sysprint" does not appear to have been created from the posted sysin.
Suggest you practice using the "Code" tag which will make posting jcl, control statements, code, and data much more readable.
Also, at the top of the pager is a link to "IBM Manuals" one of which is the "IBM JCL Utilities Guide for DFSMS". This has the information on the iebupdte utility.
Does the job possibly have multiple steps? |
|
Back to top |
|
|
nandhu
New User
Joined: 07 Mar 2006 Posts: 7 Location: chennai
|
|
|
|
Hi Dick,
yes, this job has multiple steps and this step has returned 04. My previous posting was the job we tried in test region.
The prod job's sys in had no statements except ENDUP. I tried going through the manuals, but couldn't resolve it.
Code:
Code: |
//INSTP30 EXEC PGM=IEBUPDTE,
// PARM=MOD
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=H1279PS.EM.COPYBOOK.M288,DISP=OLD
//SYSUT2 DD DSN=H1279PS.EM.COPYBOOK.M288,DISP=OLD
//SYSIN DD DSN=H1279PS.UP.TCOPBOO2.L617(+1),DISP=OLD |
Code:
Code: |
*********************************
./ ENDUP
******************************** |
|
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
Hello,
Please post the sysprint output of thie instp30. Also please post the jcl, sysin, and sysprint for a step that works as needed.
Note how your previous post has now been "Coded". With a little practice, it becomes almost automatic. It also preserves alignment, so the poster does not have to count positions |
|
Back to top |
|
|
nandhu
New User
Joined: 07 Mar 2006 Posts: 7 Location: chennai
|
|
|
|
Hi,
Please find below the sysprint of the above step:
Code: |
.SARPAGE 10 DS=SYSPRINT.INSTP30 . /0000134
. SYSIN NEW MASTER
. ./ ENDUP
.IEB805I CONTROL STATEMENT ERROR.
.IEB818I HIGHEST CONDITION CODE WAS 00000004
.IEB819I END OF JOB IEBUPDTE. |
|
|
Back to top |
|
|
gcicchet
Senior Member
Joined: 28 Jul 2006 Posts: 1702 Location: Australia
|
|
|
|
Hi,
I'm a little confused with this thread, what exactly are you trying to achieve ?
without a function statement such as ADD | CHANGE | REPL | REPRO is not going to do much except returning a cc of 04.
Gerry |
|
Back to top |
|
|
nandhu
New User
Joined: 07 Mar 2006 Posts: 7 Location: chennai
|
|
|
|
Hi,
This job step now is a dummy step, we will be adding the functions when ever we want change something in a library. This library has the copybook structure of some tables. So only when we change/add some copybooks we update the sysin with appropriate commands.
So when there is no change, this step is a dummy step and should return zero, but now it throws an error saying control statemetn error. |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19243 Location: Inside the Matrix
|
|
|
|
Hello,
You should re-think the implementation. . .
You need to make sure there is "something" to update even if it is a dummy member or set/use a condition code to conditionally execute this step only when there is something to update.
IBM is not going to change the utility to do what you are trying to do. |
|
Back to top |
|
|
|