"JCL STATEMENT MAXIMUM LENGTH EXCEEDED" error in a JCL program.

I get a "JCL STATEMENT MAXIMUM LENGTH EXCEEDED" error on an IF statement in a JCL program.  The length of the statement is 632 words or 126 lines.  Does anyone know what the limit is?
AFreeman123Asked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

giltjrCommented:
Which statment: JOB, EXEC, DD?  That is a LONG, LONG, JCL statement.  Typically JCL states limitations in characters, how many characters?
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
giltjrCommented:
Opps, just saw it was an IF.  How many nested layers and how many characters?
0
giltjrCommented:
So far the only thing I can find is that an IF construct can have no more that 15 levels.
0
Cloud Class® Course: Python 3 Fundamentals

This course will teach participants about installing and configuring Python, syntax, importing, statements, types, strings, booleans, files, lists, tuples, comprehensions, functions, and classes.

AFreeman123Author Commented:
It is a one level if statement created by an automating validation step checker.  Copying this line into word I get 7171 char.    Exact error line is IEFC012I JCL STATEMENT MAXIMUM LENGTH EXCEEDED.
0
giltjrCommented:
I looked up the message and IBM says to check to make sure there are no missing continuation marks or close parenthesis.


That is a LONG If statement.  I would double check what the tool is attempting to do.  It seems that 7,000 bytes of "If" would be a bit too much.  I could not image the number of steps that you would need to be executed or the number of different condition codes combinations that you would need in order to get an If construct that big.
0
AFreeman123Author Commented:
Syntax is good.  I did find that an IF statement run before an EXEC step is limited to 254 steps for the job.  This job has 252 steps.
0
giltjrCommented:
Unless something has changed all jobs are limited to 254 steps, with our without If statements.  Has been that way for as long as I can remember.

Umm, how do you know the syntax is good if MVS/JES will not process it?  Until MVS/JES can process it, you can only assume that it is good.

I does not seem that IBM documents the maximum length for JCL statements.  The only length restrictions I can find (or that I ever knew about) were with individual parameters.

My suggestion would be to open a ticket with IBM and ask.
0
AFreeman123Author Commented:
And the answer is statements are contained in an 8192 byte buffer.  The step in question  of 7171 char + spaces = 8932 bytes.
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Mainframe OS

From novice to tech pro — start learning today.