One dataset is creating in the step1 with LRECL of 133 and
the same dataset is used in the next step in DISP=SHR mode,
but while scanning the JCL the following error is thrwon.
Please verify the below JCL
$/SEPP030.PROVIDER DD
DSN=Z1225BT.F5750PG9.F5910PRV.QC#A6868
//ERRORRPT DD
DSN=F5910&ST&IN..F5910EPP.ERRORRPT.P&CYCDATE,
--ERRORRPT DD
DSN=F5910PG.F5910EPP.ERRORRPT.P,
//
DISP=&DISNCD,UNIT=&DELQ,
-- DISP=
(NEW,CATLG,DELETE),UNIT=DELQ,
// SPACE=(TRK,
(30,15),RLSE),
//
DCB=&DCB2
-- DCB=
(PPG.METMODEL,BLKSIZE=0,LRECL=133,RECFM=FB)
$/SEPP030.ERRORRPT DD
DSN=Z1225BT.F5910EPP.ERRORRPT.AOUTPUT
//SEPP040 EXEC PGM=FILEAID,COND=
(0002,EQ,SEPP030)
//SYSPRINT DD
SYSOUT=*
//SYSLIST DD
SYSOUT=*
//DD01 DD DSN=SYSCMN.PROD.CCLIB
(F5910EP1),DISP=SHR
$/SEPP040.DD01 DD DSN=Z1225BT.TEST.CCLIB
(F5910EP1)
E1 - DSS20791E - DATA
SET 'Z1225BT.F5910EPP.ERRORRPT.AOUTPUT' HAS AN
LRECL OF 133 COULD NOT BE OPENED BECAUSE
THE CODED
LRECL WAS
80.
// DD
DSN=F5910&ST&IN..F5910EPP.ERRORRPT.P&CYCDATE,
-- DD
DSN=F5910PG.F5910EPP.ERRORRPT.P,
//
DISP=SHR
$/ DD
DSN=Z1225BT.F5910EPP.ERRORRPT.AOUTPUT
please find the error code in the above mentioned lines and
please suggest me about the error and the solution for that.
Answers were Sorted based on User's Feedback
Answer / giri12
The error in the above JCL is... In the program the record
length for the dataset is mentioned as 80 but in the job it
is mentioned as 133. It is somewhat lrecl mismatch.
| Is This Answer Correct ? | 15 Yes | 1 No |
Answer / muttiah
If you tailor JCL with changes, it will look like this.
$/SEPP030.PROVIDER DD
DSN=Z1225BT.F5750PG9.F5910PRV.QC#A6868
//ERRORRPT DD
DSN=F5910PG.F5910EPP.ERRORRPT.P,
// DISP=(NEW,CATLG,DELETE),UNIT=DELQ,
// SPACE=(TRK,(30,15),RLSE),
// DCB=(PPG.METMODEL,BLKSIZE=0,LRECL=133,RECFM=FB)
$/SEPP030.ERRORRPT DD
DSN=Z1225BT.F5910EPP.ERRORRPT.AOUTPUT
//SEPP040 EXEC PGM=FILEAID,COND=
(0002,EQ,SEPP030)
//SYSPRINT DD
SYSOUT=*
//SYSLIST DD
SYSOUT=*
//DD01 DD DSN=SYSCMN.PROD.CCLIB
(F5910EP1),DISP=SHR
$/SEPP040.DD01 DD DSN=Z1225BT.TEST.CCLIB
(F5910EP1)
E1 - DSS20791E - DATA
SET 'Z1225BT.F5910EPP.ERRORRPT.AOUTPUT' HAS AN
LRECL OF 133 COULD NOT BE OPENED BECAUSE THE CODED LRECL
WAS 80.
// DD
DSN=F5910PG.F5910EPP.ERRORRPT.P,DISP=SHR
$/ DD DSN=Z1225BT.F5910EPP.ERRORRPT.AOUTPUT
Here the line starting with $/ is an override line.
But my questin here is $/ line has SEPP030.XXXXXX which
indicates there is a proc override but i'm not able to see
any proc in the JCL only pgm is there.We can use this stmt
only when we are using procedure's but not programs
file Z1225BT.F5910EPP.ERRORRPT.AOUTPUT details like where
it is created is not provided may be there they might have
given as 133..
If you see the last 2 lines the files are concatenated
F5910PG.F5910EPP.ERRORRPT.P 1225BT.F5910EPP.ERRORRPT.AOUTPUT
when you are contatenating the files should be of same LRECL
I guess there we are getting this error.
If you can provide the exact JCL/Details i can help you out.
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / arjun
Actually BLKSIZE is coded as 0 .I think BLKSIZE should
always be coded in multiples of LRECL.i.e; LRECL=133 then
BLKSIZE=1330 should be coded.
| Is This Answer Correct ? | 0 Yes | 1 No |
I have 5 steps in my jcl ,I need to execute first three steps and then 2nd step again ,4th and 5th steps if rc of 2nd step is zero
is step name is compulsory in jcl ?
How to submit jcl through a cobol program?
Statement1 "We can not use UNCATLG in SMS managed VSAM datasets" Statement2 "We can not delete a SMS managed data set without UNCATLG it" (P-353, Saba Zameer book) Then how do we delete SMS managed VSAM datasets ?
We have two PS files,want to compare those files and put the duplicate records in one file. Input file 1 contains(1,2,4,9,10) Input file 2 contains (1,4,5,11,12,14,16). Help me with jcl.
How to code these statements in JCL: CLEANUP INITIAL(NO) RESTART(NO) DYNALLOC(NO) job definition..?
List the different jcl statements that are not permitted in the procedures?
Can I share my data with other jobs? How?
which parameter is use to declare the name of dataset in dd statement?
What is the difference between a PDS member and a GDG Generation ? Is it only this, that with a generation we can use +1, 0, -1 etc while with PDS member we can not ?
In how ways you can pass the data from Jcl to cobol ?
There are 2PROCS in a JCL. I want following conditions to be carried out 1) 1st PROC should be executed as such In second PROC 2) First 4steps should not be executed 3) 5th step should not be executed 4) 6th and 7th step should be executed The change should be done only in the JCL and PROC should be untouched ?