Troubleshooting
Problem
You receive an abend4038 when running a CICS program written in COBOL with SQL commands. When you run the program through CEDF, you can see that the abend 4038 occurs when the program goes to do the first load. You are using Language Environment (LE).
Cause
An abend 4038 usually means transactions are not prepared to run above the line. According to the LE messages manual there should be a return code. It also states to check the LE messages.
Resolving The Problem
Change the LE runtime options to ALL31=OFF and STACK=(4K,4K,BELOW,KEEP). This can be done using IUI skeletons.
Following are the IUI COBOL specific skeletons to build SQL CICS applications (all located in ICCF lib 2):
C$QCVONL - COBOL/VSE source with EXEC CICS and EXEC SQL requests
C$QCOONL - Former DOS/COBOL with ........ ........
C$QC2ONL - Former VS COBOL-II ........ ........
In general explicit setting of AMODE and RMODE is possible using 'EXEC LNKEDT,PARM='AMODE=31,RMODE=ANY' , but depends on the application capabilities.
Following are the IUI COBOL specific skeletons to build SQL CICS applications (all located in ICCF lib 2):
C$QCVONL - COBOL/VSE source with EXEC CICS and EXEC SQL requests
C$QCOONL - Former DOS/COBOL with ........ ........
C$QC2ONL - Former VS COBOL-II ........ ........
In general explicit setting of AMODE and RMODE is possible using 'EXEC LNKEDT,PARM='AMODE=31,RMODE=ANY' , but depends on the application capabilities.
[{"Type":"MASTER","Line of Business":{"code":"LOB70","label":"Z TPS"},"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSGMGV","label":"CICS Transaction Server"},"ARM Category":[{"code":"a8m0z00000007d1AAA","label":"Developing applications"}],"ARM Case Number":"","Platform":[{"code":"PF038","label":"z\/VSE"}],"Version":"All Versions"}]
Product Synonym
CICS/VSE CICS VSE
Was this topic helpful?
Document Information
Modified date:
05 January 2026
UID
swg21024616