CEE3191E An attempt was
made to initialize an AMODE24 application without using the ALL31(OFF) and
From compile unit A181 at entry point A181 at compile unit offset +000000C2 at entry offset +000000C2 at
occurs after installing maintenance to CA Easytrieve 6.4
Release : 6.4
Component : CA Easytrieve Plus Report Generator
Re-link EZTPA181 and EZTPD142 using a modified
LKLE step as follows from install job 6.
You have to use an INCLUDE of an CEEUOPT module which keeps ALL31 OFF and STACK BELOW.
That means you must create module with ALL31=OFF,STACK(,,BELOW,.) before running the job.
Also we recommend renaming the EZTPD142 module that was linked with the original installation, in case it is needed later or you wish to keep separate versions of it.
//LKLE EXEC PGM=IEWL,PARM='LIST,MAP,XREF'
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD UNIT=3390,SPACE=(1024,(50,20))
//SYSLIB DD DSN='CEE.SCEELKED',
//CAILIB DD DSN=your.EZTP64.CAILIB,
//C$A64LLD DD DSN=your.EZTP64.C$A64LLD,
//LELIB DD DSN='CEE.SCEELKED',
//SYSLMOD DD DSN=your.EZTP64.CAILIB,
//SYSLIN DD *
For your information - at runtime, EZTPD01 calls
EZTPD142. Up until that moment, there is no LE anywhere in the run of the EZT
program. EZTPD142 is the "LE Main" program and contains
CEEENTRY macro, so when EZTPD142 is starting, the LE runtime gets called, and
that starts LE. Part of LE starting itself is the loading of the
Runtime Options table which typically use the LE default values
of ALL31=ON and STACK ANY, (which causes the CEE3191E error). You can use JCL PARMS to handle
this situation when Cobol is calling Cobol, but unfortunately, when that is
done in an EZT job, the JCL PARMs don't make it through to LE. The
only way to override the LE options is to use the CEEUOPT.