A COBOL 5.2 program abends with an AEXZ abend when being monitored by CA Intertest CICS.
book
Article ID: 123211
calendar_today
Updated On:
Products
InterTest - CICSInterTest - BatchInterTest VSE - CICS
Issue/Introduction
The client just upgraded from COBOL 4.2 to COBOL 5.2.The client set several breakpoint in the COBOL 5.2 program. When the client executes the program they do not receive any breakpoints and they abend with an AEXZ abend.
Environment
Z/OS CICS
Cause
The cause of the problem is how the compile JCL was coded. In COBOL 5.2 the compile step is a DD statement for SYSMDECK.
IBM states that the SYSMDECK must point to a data set.
EXEC PGM=IGYCRCTL //SYSMDECK
The client coded DUMMY for the SYSMDECK //SYSMDECK DD DUMMY
In the JCL allocation step you can see the SYSMDECK is not pointing to a data set when it is coded DUMMY EF237I DMY ALLOCATED TO SYSMDECK
The client did not use the sample JCL shipped with CA Intertest for CICS. They had their own custom JCL.
Resolution
The cause of the problem is how the compile JCL was coded. In COBOL 5.2 the compile step is a DD statement for SYSMDECK.
EXEC PGM=IGYCRCTL //SYSMDECK
Ther client coded //SYSMDECK DD DUMMY
In the JCL allocation step you can see the SYSMDECK is not pointing to a data set when it is coded DUMMY EF237I DMY ALLOCATED TO SYSMDECK
The client did not use the sample JCL shipped with CA Intertest for CICS. They had their own custom JCL.
The SYSMDECK DD statement must point to a data set for example
//SYSMDECK DD UNIT=SYSDA,SPACE=(TRK,(9,9))
You will see in the compile output the SYSMDECK gets allocated to a TEMP file when SYSDA as shjown below
IGD101I SMS ALLOCATED TO DDNAME (SYSMDECK) DSN (SYS18351.T155236.RA000.PROGRAMNAME.R0440066
A Sample COBOL 5.2 PROC is shipped with CA Intertest CICS PDS HLQ.CAVHPROC(CABACOB5)
For more on the SYSMDECK DD statement please view this link. The SYSMDECK data set is required for all compilations. If you specify the MDECK compiler option, the SYSMDECK DD allocation must specify a permanent data set. However, if you use the NOMDECK option, SYSMDECK can be specified as a utility (temporary) data set.
//SYSMDECK DD DSNAME=dsname,UNIT=SYSDACopy The SYSMDECK file will contain a copy of the updated input source after library processing, that is, the result of COPY, BASIS, REPLACE, EXEC SQL INCLUDE, and EXEC SQLIMS INCLUDE statements. The file can be a traditional MVS™ data set or a z/OS® UNIX file.