Page 2 of 3

Re: Compile JCL for COBOL error

PostPosted: Sat Dec 01, 2012 4:28 am
by NicC
When you browse USER.LOAD is your program in there?

Re: Compile JCL for COBOL error

PostPosted: Tue Dec 04, 2012 3:07 am
by TheSilverFox
Thanks everyone! I got it to work! I assigned the wrong library for the JCL.

Now i'm doing an actual application. Here's the JCL to compile it.

//USERB JOB (USER),'Sample Program',CLASS=W,
// MSGCLASS=X,REGION=0M,NOTIFY=USER
//COMPILE EXEC PROC=IGYWCL,REGION=1024K
//COBOL.SYSLIB DD DSN=thlq.SCSQCOBC,DISP=SHR
//COBOL.SYSIN DD DSN=USER.COBPBLSH,DISP=SHR <--------The Cobol source program
//LKED.SYSLMOD DD DISP=SHR,DSN=USER.LOADLIB(PGM) <--------My own Load Library
//LKED.SYSLIN DD DISP=SHR,DSN=thlq.SCSQLOAD(CSQCSTUB)
/*
//

I get a return code of zero. BUT, when i try to run the program....I get this JCL Error:

ABEND=S0C1 U0000 REASON=00000001 868


Any suggestions?

Re: Compile JCL for COBOL error

PostPosted: Tue Dec 04, 2012 3:30 am
by enrico-sorichetti
ABEND=S0C1 U0000 REASON=00000001 868


quote what happened when You looked at the manual ?
z/OS V1R10.0 MVS System Codes
http://publibz.boulder.ibm.com/cgi-bin/ ... 0112020001

not the latest one but more than enough to get You started on the art of finding Yourself the info You need

But if You want the one for the zOS level You are using You can start from here
http://www-03.ibm.com/systems/z/os/zos/ ... index.html

Re: Compile JCL for COBOL error

PostPosted: Tue Dec 04, 2012 3:51 am
by Akatsukami
TheSilverFox wrote:I get a return code of zero. BUT, when i try to run the program....I get this JCL Error:

ABEND=S0C1 U0000 REASON=00000001 868


Any suggestions?

First, I strongly recommend that you enclose all JCL, code, sysout, and anything where alignment may be significant in Code tags
so that  it   looks    like     this.

Note that this preserves multiple spaces, which are not in ordinary text.

Second, note that the return codes of the compile and link steps have nothing to do with the retun code (or abend code) of program; it is perfectly possible to compile and link a program that could never run.

Third, although a S0C1 indicates an operation exception (that is, an attempt to execute an invalid machine operation), the link-editor will produce bad machine code; this is a case of your program in memory being overlaid with data. An abend of this sort is curdled misery to debug; recompile with subscript range checking, initialize pointers to a known value (in my shop we use X'DEAD2BAD') to make them easy to spot in the dump, and hope that the data causing the problem aren't in the five millionth input record.

Re: Compile JCL for COBOL error

PostPosted: Tue Dec 04, 2012 4:28 am
by BillyBoyo
Did you get any mention of OFFSET in your output, associated with your program name (or some other program name)?

Do you know how to link any such OFFSET to the code which was being executed? Do you have any colleagues with more experience who can assist you with this, or a trainer/teacher?

Try to compile and run again with
        CBL SSRANGE


as the first line in your program (this is the subscript checking Mr A. is referring to). Let us know if anything different happens.

Re: Compile JCL for COBOL error

PostPosted: Tue Dec 04, 2012 4:56 am
by TheSilverFox
BillyBoyo wrote:Did you get any mention of OFFSET in your output, associated with your program name (or some other program name)?

Do you know how to link any such OFFSET to the code which was being executed? Do you have any colleagues with more experience who can assist you with this, or a trainer/teacher?

Try to compile and run again with
        CBL SSRANGE


as the first line in your program (this is the subscript checking Mr A. is referring to). Let us know if anything different happens.


Thanks. I get the offset 00000006

The colleagues i have use to know COBOL but hasn't done it for about 10 or so years.

Thank you all for the help thus far. I'll go try to go about what you suggest Akatsukami.

Re: Compile JCL for COBOL error

PostPosted: Tue Dec 04, 2012 5:36 am
by BillyBoyo
Well, if you have an OFFSET of 6...

Can you paste the full message containing the OFFSET and anything with PSW in it and anything else which takes your fancy.

Can you post the output from the linkedit step after the Compile as well, please.

Can you describe your program a little. Is it a program which another CALLs, does it CALL other modules itself, use any databases, stuff like that.

Re: Compile JCL for COBOL error

PostPosted: Tue Dec 04, 2012 7:29 am
by TheSilverFox
BillyBoyo wrote:Well, if you have and OFFSET of 6...

Can you paste the full message containing the OFFSET and anything with PSW in it and anything else which takes your fancy.

Can you post the output from the linkedit step after the Compile as well, please.

Can you describe your program a little. Is it a program which another CALLs, does it CALL other modules itself, use any databases, stuff like that.

Here's the full message containing the OFFSET:

IEA995I SYMPTOM DUMP OUTPUT  275                           
SYSTEM COMPLETION CODE=0C1  REASON CODE=00000001           
 TIME=20.41.50  SEQ=39522  CPU=0000  ASID=02B6             
 PSW AT TIME OF ERROR  078D0000   9FD0089E  ILC 6  INTC 01 
   ACTIVE LOAD MODULE           ADDRESS=1FD00898  OFFSET=00000006
 NAME=PGM                                       
 DATA AT PSW  1FD00898 - F5F6F5F5  60D9F3F6  4040404D


This is the output of the LKED step.

 IEF373I STEP/LKED    /START 2012338.2048                                     
 IEF032I STEP/LKED    /STOP  2012338.2048                                     
         CPU:     0 HR  00 MIN  00.01 SEC    SRB:     0 HR  00 MIN  00.00 SEC 
         VIRT:   156K  SYS:   248K  EXT:     1772K  SYS:     9984K             
 IGD105I SYS12338.T204846.RA000.USER.LOADSET.H03  DELETED,   DDNAME=SYSLIN
 ******************************************************************************

Did i provide enough?

This program specifically uses the MQ libraries to publish a message to a topic i have, by first connecting to the queue manager and then opening the topic.

Re: Compile JCL for COBOL error

PostPosted: Tue Dec 04, 2012 1:12 pm
by BillyBoyo
You sure have done something "interesting" :-)

The DATA AT PSW is supposed to be assembler code, showing the instruction which failed. What you have is "5655-R36 (". Do you recognise that? It is the Product Code for WebSphere MQ for z/OS V7.0.1!

Somehow, you have got your Cobol program to branch to a bit of text somewhere in a program which is part of WebSphere or references its product code.

As Mr A. said, these type of things can be tricky :-)

Is your program a big program, or small?

Re: Compile JCL for COBOL error

PostPosted: Tue Dec 04, 2012 1:32 pm
by enrico-sorichetti
if the TS used the jcl posted he/she just linked as a load module the MQ stub :mrgreen:

//LKED.SYSLMOD DD DISP=SHR,DSN=USER.LOADLIB(PGM) <--------My own Load Library
//LKED.SYSLIN DD DISP=SHR,DSN=thlq.SCSQLOAD(CSQCSTUB)