From: Robert Jones on
Bottom posting only

Robert Jones wrote:
> CHSB wrote:
> > I am having a problem where my COBOL programs do not work when located
> > inside a PROC but execute fine when submitted as normal JCL. I looks
> > like the problem is with overlaid storage because I get errors like
> > USER-ABEND CODE 4083 and SEGMENT TRANSLATION EXCEPTION depending on
> > which program I run. I even commented out all of the code on one
> > program except one display statement and still get the error. My
> > thought is that when the JCL is inside a PROC that the system doesn't
> > allocate the proper storage for the program and it ends up writing over
> > storage. I tried modifying the SIZE parameter on the EXEC PGM=....
> > statement to add an extra meg of storage but still get the same error.
> > Is there anyway to specify a size when executing the PROC itself or
> > does anyone have any ideas as to how I might fix this error?
> >
> > Thanks
> >
> > Chris
>
> Hello Chris
>
> Conceptually there is no reason why they shouldn't run in a PROC.
> Though you don't specify it, I presume you are running under some
> flavour of IBM MVS. It usually helps to specify the hardware,
> operating system and compiler version in use. In this case, you should
> review the PROC JCL expansion, which can be obtained with MSGLEVEL(1,1)
> on the JOB card. This should tell you what options are being set from
> within the PROC and you can hopefully resolve the problem yourself from
> there, if not come back to us with the details of the parameters set
> within the PROC that differ from those you have set yourself in the
> plain JCL version that works.
>
> Robert

I should have also suggested that you add ',TYPRUN=SCAN' to the end of
your JOB statement when first using MSGLEVEL=(1,1), this allows the
JCL interpreter to expand the JCL in the PROC to show the parameter
substitutions without executing it. Alternatively, just list the
contents of the PROC from wherever it is stored. This wouldn't show
how the substitutions were actually applied, but you could work out
what they would be manually.

Robert

Robert

First  |  Prev  | 
Pages: 1 2
Prev: Cobol syntax highlighting
Next: Disassembler