IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

JCL Error in IF ELSE: EXPECTED CONTINUATION NOT RECEIVED


IBM Mainframe Forums -> JCL & VSAM
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
ybhavesh
Warnings : 1

New User


Joined: 17 Feb 2007
Posts: 46
Location: mumbai

PostPosted: Thu Apr 05, 2007 11:17 am
Reply with quote

Hi All,

Can any one solve this error

//IFELSE JOB 'IF ELSE STRUCTURE',NOTIFY=&SYSUID,CLASS=Y,
// MSGCLASS=X,MSGLEVEL=(1,1)
// JCLLIB ORDER=OSOP.BCB1O.PROC
//STEP1 EXEC PROC=VTOCLIST
//SYSIN DD *
LISTVTOC FORMAT,VOL=3390=WORKY1
/*
//IFPART IF STEP1.RC=0THEN
//STEP2 EXEC PROC=LISTPDS
//SYSIN DD *
LISTPDS DSN=OSOP.BCB1O.JCL,VOL=3390=WORKY1
//ELSEPART ELSE
//ELSECOND EXEC PROC=BHAVESH
// ENDIF

JESYSMSG

********************************* TOP OF DATA ****************
STMT NO. MESSAGE
3 IEFC001I PROCEDURE VTOCLIST WAS EXPANDED USING PRIVATE LIBRARY OSOP.BCB1O.PROC
10 IEFC621I EXPECTED CONTINUATION NOT RECEIVED
11 IEFC001I PROCEDURE LISTPDS WAS EXPANDED USING PRIVATE LIBRARY OSOP.BCB1O.PROC
19 IEFC001I PROCEDURE BHAVESH WAS EXPANDED USING PRIVATE LIBRARY OSOP.BCB1O.PROC

******************************** BOTTOM OF DATA *************

JESJCL


1 //IFELSE JOB 'IF ELSE STRUCTURE',NOTIFY=&SYSUID,CLASS=Y,
// MSGCLASS=X,MSGLEVEL=(1,1)
IEFC653I SUBSTITUTION JCL - 'IF ELSE STRUCTURE',NOTIFY=BCB1O,CLASS=Y
2 // JCLLIB ORDER=OSOP.BCB1O.PROC
3 //STEP1 EXEC PROC=VTOCLIST
4 XXVTOCLIST PROC
5 XXSTEP1 EXEC PGM=IEHLIST
6 XXSYSPRINT DD SYSOUT=*
7 XXDISK DD UNIT=3390,VOL=SER=WORKY1
8 //SYSIN DD *
9 XX PEND
10 //IFPART IF STEP1.RC=JCLERRORTHEN
11 //STEP2 EXEC PROC=LISTPDS
12 XXLISTPDS PROC
13 XXSTEP2 EXEC PGM=IEHLIST
14 XXSYSPRINT DD SYSOUT=*
15 XXDRUM DD UNIT=3390,VOL=SER=WORKY1,DISP=OLD
16 //SYSIN DD *
17 XX PEND
18 //ELSEPART ELSE
19 //ELSECOND EXEC PROC=BHAVESH
20 XXBHAVESH PROC
21 XXSTEP3 EXEC PGM=IEFBR14
22 XXSYSPRINT DD SYSOUT=*
23 XXALLOC DD DSN=OSOP.BCB1O.ALLOC,DISP=(NEW,CATLG,DELETE),
XX UNIT=3390,VOL=SER=WORKY1,
XX SPACE=(TRK,(2,2)),
XX DCB=(RECFM=FB,LRECL=80,BLKSIZE=800)
24 XXSYSOUT DD SYSOUT=*
25 XX PEND
26 // ENDIF
Back to top
View user's profile Send private message
murmohk1

Senior Member


Joined: 29 Jun 2006
Posts: 1436
Location: Bangalore,India

PostPosted: Thu Apr 05, 2007 11:42 am
Reply with quote

Bhavesh,

Quote:
10 //IFPART IF STEP1.RC=JCLERRORTHEN


You dont have any thing JCLERROR. It should be RC value (numeric value).
Back to top
View user's profile Send private message
monga

New User


Joined: 18 Apr 2006
Posts: 13

PostPosted: Thu Apr 05, 2007 11:45 am
Reply with quote

IEFC621I lists the reason as expected continuation not received.

Can you modify this text as below:

Code:
//IFPART IF STEP1.RC=0 THEN


just give a space before 'Then' and try it out.

Thanks,

monga
Back to top
View user's profile Send private message
ybhavesh
Warnings : 1

New User


Joined: 17 Feb 2007
Posts: 46
Location: mumbai

PostPosted: Thu Apr 05, 2007 12:14 pm
Reply with quote

Hi
i replace JCLERROR WITH
//IFPART IF STEP1.RC=0THEN
then also it is giving the jclerror message

********************************* TOP OF DATA ***************
STMT NO. MESSAGE
3 IEFC001I PROCEDURE VTOCLIST WAS EXPANDED USING PRIVATE LIBRARY OSOP.BCb1O.PROC
10 IEFC621I EXPECTED CONTINUATION NOT RECEIVED
11 IEFC001I PROCEDURE LISTPDS WAS EXPANDED USING PRIVATE LIBRARY OSOP.BCB1O.PROC
19 IEFC001I PROCEDURE BHAVESH WAS EXPANDED USING PRIVATE LIBRARY OSOP.BCB1O.PROC
******************************** BOTTOM OF DATA *************
Back to top
View user's profile Send private message
vkphani

New User


Joined: 29 Oct 2003
Posts: 29

PostPosted: Thu Apr 05, 2007 1:45 pm
Reply with quote

In the 8th line, after SYSIN DD *, where is the delimter /* ? Give that and try and give a space in between 0 and THEN in 10th line.
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8796
Location: Welsh Wales

PostPosted: Thu Apr 05, 2007 1:48 pm
Reply with quote

Is the SYSIN DD * defined in the PROC ?

If so, it's invalid.
Back to top
View user's profile Send private message
ybhavesh
Warnings : 1

New User


Joined: 17 Feb 2007
Posts: 46
Location: mumbai

PostPosted: Thu Apr 05, 2007 2:16 pm
Reply with quote

Hi all

i am again getting error

********************************* TOP OF DATA ***************
STMT NO. MESSAGE
3 IEFC001I PROCEDURE VTOCLIST WAS EXPANDED USING PRIVATE LIBRARY OSOP.BCB1O.PROC
11 IEFC001I PROCEDURE LISTPDS WAS EXPANDED USING PRIVATE LIBRARY OSOP.BCB1O.PROC
19 IEFC001I PROCEDURE BHAVESH WAS EXPANDED USING PRIVATE LIBRARY OSOP.BCB1O.PROC
10 IEF645I INVALID REFERBACK IN THE RC FIELD
******************************** BOTTOM OF DATA ************


i have modified as you said


JESJCL

********************************* TOP OF DATA ***************
1 //IFELSE JOB 'IFELSSTRUCTURE',NOTIFY=&SYSUID,CLASS=Y,
// MSGCLASS=X,MSGLEVEL=(1,1)
2 // JCLLIB ORDER=OSOP.BCB1O.PROC
3 //STEP1 EXEC PROC=VTOCLIST
4 XXVTOCLIST PROC
5 XXSTEP1 EXEC PGM=IEHLIST
6 XXSYSPRINT DD SYSOUT=*
7 XXDISK DD UNIT=3390,VOL=SER=WORKY1
8 //SYSIN DD *
9 XX PEND
10 //IFPART IF STEP1.RC=0 THEN
11 //STEP2 EXEC PROC=LISTPDS
12 XXLISTPDS PROC
13 XXSTEP2 EXEC PGM=IEHLIST
14 XXSYSPRINT DD SYSOUT=*
15 XXDRUM DD UNIT=3390,VOL=SER=WORKY1,DISP=OLD
16 //SYSIN DD *
17 XX PEND
18 //ELSEPART ELSE
19 //ELSECOND EXEC PROC=BHAVESH
20 XXBHAVESH PROC
21 XXSTEP3 EXEC PGM=IEFBR14
22 XXSYSPRINT DD SYSOUT=*
23 XXALLOC DD DSN=OSOP.BCB1O.ALLOC,DISP=(NEW,CATLG,DELETE),
XX UNIT=3390,VOL=SER=WORKY1,
XX SPACE=(TRK,(2,2)),
XX DCB=(RECFM=FB,LRECL=80,BLKSIZE=800)
24 XXSYSOUT DD SYSOUT=*
25 XX PEND
26 // ENDIF
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8796
Location: Welsh Wales

PostPosted: Thu Apr 05, 2007 2:33 pm
Reply with quote

Here's a link to the fine manual which will tell you how yo fix your problem.

http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/IEA2B650/17.0?DT=20040712170508
Back to top
View user's profile Send private message
murmohk1

Senior Member


Joined: 29 Jun 2006
Posts: 1436
Location: Bangalore,India

PostPosted: Thu Apr 05, 2007 2:34 pm
Reply with quote

Give stepname.procname in the IF condition.
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8796
Location: Welsh Wales

PostPosted: Thu Apr 05, 2007 2:41 pm
Reply with quote

Quote:
Give stepname.procname in the IF condition.

Given that both names are the same, STEP1, in this case your solution would work.

From my interpretation of your terminology stepname.procname it would not work if the names were different.
Back to top
View user's profile Send private message
ybhavesh
Warnings : 1

New User


Joined: 17 Feb 2007
Posts: 46
Location: mumbai

PostPosted: Fri Apr 06, 2007 7:28 am
Reply with quote

Hi

I am still getting error

even i have given the same name

10 IEF645I INVALID REFERBACK IN THE RC FIELD

JCl of VTOCLIST

//VTOCLIST PROC
//STEP1 EXEC PGM=IEHLIST
//SYSPRINT DD SYSOUT=*
//DISK DD UNIT=3390,VOL=SER=WORKY1
// PEND



JCL of IFELSE

//IFELSE JOB 'IF ELSE STRUCTURE',NOTIFY=&SYSUID,CLASS=Y,
// MSGCLASS=X,MSGLEVEL=(1,1)
// JCLLIB ORDER=OSOP.BCB1O.PROC
//STEP1 EXEC PROC=VTOCLIST
//SYSIN DD *
LISTVTOC FORMAT,VOL=3390=WORKY1
/*
//IFPART IF STEP1.VTOCLIST.RC=0 THEN
//STEP2 EXEC PROC=LISTPDS
//SYSIN DD *
LISTPDS DSN=OSOP.BCB1O.JCL,VOL=3390=WORKY1
/*
//ELSEPART ELSE
//ELSECOND EXEC PROC=BHAVESH
// ENDIF
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19243
Location: Inside the Matrix

PostPosted: Fri Apr 06, 2007 8:20 am
Reply with quote

Hello,

You need to post all of the jcl and control statements together - the same as are submitted - and all of the messages from the actual job output. Please do not add anything to the submitted jcl.

The pieces posted are not complete.

Post the sysout that shows the jcl with line numbers.

When you post this information, use the "Code" tab at the top of the reply panel.

What you posted does not say anything about the "same name" - it says there is an invalid backward reference.
Back to top
View user's profile Send private message
ybhavesh
Warnings : 1

New User


Joined: 17 Feb 2007
Posts: 46
Location: mumbai

PostPosted: Fri Apr 06, 2007 8:40 am
Reply with quote

Hi Dick

********************************* TOP OF DATA ***************
1 //IFELSE JOB 'IF ELSE STRUCTURE',NOTIFY=&SYSUID,CLASS=Y,
// MSGCLASS=X,MSGLEVEL=(1,1)
IEFC653I SUBSTITUTION JCL - 'IF ELSE STRUCTURE',NOTIFY=BCB1O,CLASS=Y,MSGCLASS=X,MSGLEVEL=(1,1)
2 // JCLLIB ORDER=OSOP.BCB1O.PROC
3 //STEP1 EXEC PROC=VTOCLIST
4 XXVTOCLIST PROC
5 XXSTEP1 EXEC PGM=IEHLIST
6 XXSYSPRINT DD SYSOUT=*
7 XXDISK DD UNIT=3390,VOL=SER=WORKY1
8 //SYSIN DD *
9 XX PEND
10 //IFPART IF STEP1.VTOCLIST.RC=0 THEN
11 //STEP2 EXEC PROC=LISTPDS
12 XXLISTPDS PROC
13 XXSTEP2 EXEC PGM=IEHLIST
14 XXSYSPRINT DD SYSOUT=*
15 XXDRUM DD UNIT=3390,VOL=SER=WORKY1,DISP=OLD
16 //SYSIN DD *
17 XX PEND
18 //ELSEPART ELSE
19 //ELSECOND EXEC PROC=BHAVESH
20 XXBHAVESH PROC
21 XXSTEP3 EXEC PGM=IEFBR14
22 XXSYSPRINT DD SYSOUT=*
23 XXALLOC DD DSN=OSOP.BCB1O.ALLOC,DISP=(NEW,CATLG,DELETE),
XX UNIT=3390,VOL=SER=WORKY1,
XX SPACE=(TRK,(2,2)),
XX DCB=(RECFM=FB,LRECL=80,BLKSIZE=800)
24 XXSYSOUT DD SYSOUT=*
25 XX PEND
26 // ENDIF


JESYSMSG

********************************* TOP OF DATA ***************
STMT NO. MESSAGE
3 IEFC001I PROCEDURE VTOCLIST WAS EXPANDED USING PRIVATE LIBRARY OSOP.BCB1O.PROC
11 IEFC001I PROCEDURE LISTPDS WAS EXPANDED USING PRIVATE LIBRARY OSOP.BCB1O.PROC
19 IEFC001I PROCEDURE BHAVESH WAS EXPANDED USING PRIVATE LIBRARY OSOP.BCB1O.PROC
10 IEF645I INVALID REFERBACK IN THE RC FIELD
******************************** BOTTOM OF DATA *******


OSOP.BCB1O.PROC(VTOCLIST)

//VTOCLIST PROC
//STEP1 EXEC PGM=IEHLIST
//SYSPRINT DD SYSOUT=*
//DISK DD UNIT=3390,VOL=SER=WORKY1
// PEND


OSOP.BCB1O.PROC(LISTPDS)

//LISTPDS PROC
//STEP2 EXEC PGM=IEHLIST
//SYSPRINT DD SYSOUT=*
//DRUM DD UNIT=3390,VOL=SER=WORKY1,DISP=OLD
// PEND

OSOP.BCB1O.PROC(BHAVESH)

//BHAVESH PROC
//STEP3 EXEC PGM=IEFBR14
//SYSPRINT DD SYSOUT=*
//ALLOC DD DSN=OSOP.BCB1O.ALLOC,DISP=(NEW,CATLG,DELETE),
// UNIT=3390,VOL=SER=WORKY1,
// SPACE=(TRK,(2,2)),
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=800)
//SYSOUT DD SYSOUT=*
// PEND


THIS IS THE CODE NOW PLEASE TELL ME WHAT IS WRONG WITH WHAT

***************************** Top of Data ********************
//IFELSE JOB 'IF ELSE STRUCTURE',NOTIFY=&SYSUID,CLASS=Y,
// MSGCLASS=X,MSGLEVEL=(1,1)
// JCLLIB ORDER=OSOP.BCB1O.PROC
//STEP1 EXEC PROC=VTOCLIST
//SYSIN DD *
LISTVTOC FORMAT,VOL=3390=WORKY1
/*
//IFPART IF STEP1.VTOCLIST.RC=0 THEN
//STEP2 EXEC PROC=LISTPDS
//SYSIN DD *
LISTPDS DSN=OSOP.BCB1O.JCL,VOL=3390=WORKY1
/*
//ELSEPART ELSE
//ELSECOND EXEC PROC=BHAVESH
// ENDIF
**************************** Bottom of Data ******************
Back to top
View user's profile Send private message
agkshirsagar

Active Member


Joined: 27 Feb 2007
Posts: 691
Location: Earth

PostPosted: Fri Apr 06, 2007 12:49 pm
Reply with quote

Code:
//VTOCLIST PROC
//STEP1 EXEC PGM=IEHLIST
//SYSPRINT DD SYSOUT=*
//DISK DD UNIT=3390,VOL=SER=WORKY1
// PEND


You can not use SYSOUT=* in PROC. Change that to a dataset.
Hope it will work if your JCL has no other problem.
Back to top
View user's profile Send private message
ybhavesh
Warnings : 1

New User


Joined: 17 Feb 2007
Posts: 46
Location: mumbai

PostPosted: Fri Apr 06, 2007 1:56 pm
Reply with quote

Hi agkshirsagar

i have changed SYSOUT=* in PROC Change to a dataset.

but still it is giving error in 10 IEF645I INVALID REFERBACK IN THE RC FIELD
the jcl is same as above i have only changed the SYSOUT=* in PROC with a dataset

JESYSMSG

********************************* TOP OF DATA ***************
STMT NO. MESSAGE
3 IEFC001I PROCEDURE VTOCLIST WAS EXPANDED USING PRIVATE LIBRARY OSOP.BCB1O.PROC
11 IEFC001I PROCEDURE LISTPDS WAS EXPANDED USING PRIVATE LIBRARY OSOP.BCB1O.PROC
19 IEFC001I PROCEDURE BHAVESH WAS EXPANDED USING PRIVATE LIBRARY OSOP.BCB1O.PROC
10 IEF645I INVALID REFERBACK IN THE RC FIELD
******************************** BOTTOM OF DATA *******
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8796
Location: Welsh Wales

PostPosted: Fri Apr 06, 2007 2:18 pm
Reply with quote

Quote:
You can not use SYSOUT=* in PROC. Change that to a dataset.

Of course you can

If you look at the examples shown in the fine manual, each one shows a space between the operators, e.g. RC = 0

You code does not show these spaces.
Back to top
View user's profile Send private message
ybhavesh
Warnings : 1

New User


Joined: 17 Feb 2007
Posts: 46
Location: mumbai

PostPosted: Fri Apr 06, 2007 2:36 pm
Reply with quote

Hi expat

i have change it
//IFPART IF STEP1.VTOCLIST.RC = 0 THEN
and saved it and submitted it but still it is generating an error same as before

********************************* TOP OF DATA ***************
STMT NO. MESSAGE
3 IEFC001I PROCEDURE VTOCLIST WAS EXPANDED USING PRIVATE LIBRARY OSOP.BCB1O.PROC
11 IEFC001I PROCEDURE LISTPDS WAS EXPANDED USING PRIVATE LIBRARY OSOP.BCB1O.PROC
19 IEFC001I PROCEDURE BHAVESH WAS EXPANDED USING PRIVATE LIBRARY OSOP.BCB1O.PROC
10 IEF645I INVALID REFERBACK IN THE RC FIELD
******************************** BOTTOM OF DATA *******
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19243
Location: Inside the Matrix

PostPosted: Fri Apr 06, 2007 8:31 pm
Reply with quote

Hello,

SYSOUT=* is quite normal in cataloged PROCedures. We have many coded this way.

The problem is the backward reference to
Code:
STEP1.VTOCLIST.RC=0


This "//IFPART IF RC=0 THEN" does not generate a JCL error here - give it a try and let us know what happens.
Back to top
View user's profile Send private message
ybhavesh
Warnings : 1

New User


Joined: 17 Feb 2007
Posts: 46
Location: mumbai

PostPosted: Sat Apr 07, 2007 7:46 am
Reply with quote

Yes Dick

It is working fine
after spending Two days on that program i want to know the reason why it is not accepting
STEP1.VTOCLIST.RC=0 THEN
and accepting
IF RC=0 THEN
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19243
Location: Inside the Matrix

PostPosted: Sat Apr 07, 2007 8:33 am
Reply with quote

Hi Bhavesh,

Going forward from the simpler example i gave, you will want to change this synntax "STEP1.VTOCLIST.RC=0". Among other things, you've used STEP1 as the procstepname as well as the stepname in the VTOCLIST PROC.

Please look at this example from the Fine Manual and try making the same type of changes to your syntax.


Code:
//JOBD      JOB   ...
     //PROC1     PROC
     //PSTEPONE  EXEC  PGM=...
     //PSTEP11   EXEC  PGM=...
     //PSTEP12   EXEC  PGM=...
     //          PEND
     //PROC2     PROC
     //PSTEPTWO  EXEC  PGM=...
     //          PEND
     //EXP1      EXEC  PROC=PROC1
     //EXP2      EXEC  PROC=PROC2
     //IFTEST3   IF  (RC > 12) THEN
     //STEP1BAD    IF  (EXP1.PSTEP11.RC > 12 OR EXP1.PSTEP12.RC > 12) THEN
     //STEP1ERR    EXEC  PGM=ERRTN,PARM=(EXP1)
     //            ELSE
     //STEP2ERR    EXEC  PGM=ERRTN,PARM=(EXP2)
     //END1BAD     ENDIF
     //          ELSE
     //NOPROB    EXEC  PROC=RUNOK
     //ENDTEST3  ENDIF
     //NEXTSTEP  EXEC  ...


Note the way the procs and steps are named - no duplications.

Give this a try and let us know how it goes.
Back to top
View user's profile Send private message
ybhavesh
Warnings : 1

New User


Joined: 17 Feb 2007
Posts: 46
Location: mumbai

PostPosted: Sat Apr 07, 2007 9:35 am
Reply with quote

Hi all

The above ERROR can be solved
ie.

//IFPART IF STEP1.VTOCLIST.RC=0 THEN


it we code

//IFPART IF STEP1.STEP1.RC = 0 THEN
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19243
Location: Inside the Matrix

PostPosted: Sun Apr 08, 2007 2:43 am
Reply with quote

Hello,

Yes, while that will work, it is better (IMHO) to make things more clear by having standards that would not permit that naming. . . Typically, it is easier to read/understand when different things have different names. FWIW

Good to hear that it is now working for you icon_smile.gif
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> JCL & VSAM

 


Similar Topics
Topic Forum Replies
No new posts IEW2315E 1369 Link error All Other Mainframe Topics 3
No new posts Help on IMS -API URL migrating from P... IMS DB/DC 1
No new posts JES datasets IO Error ABENDS & Debugging 3
No new posts Error to invoke MPP program through B... IMS DB/DC 3
No new posts PKZIP error ZPFM121E and ZPCE009E JCL & VSAM 6
Search our Forums:

Back to Top