CEE3191E An attempt was made to initialize an AMODE24 application without using the ALL31(OFF) and STACK(,,BELOW)
search cancel

CEE3191E An attempt was made to initialize an AMODE24 application without using the ALL31(OFF) and STACK(,,BELOW)

book

Article ID: 136972

calendar_today

Updated On:

Products

Easytrieve Report Generator PAN/SQL

Issue/Introduction

CEE3191E An attempt was made to initialize an AMODE24 application without using the ALL31(OFF) and STACK(,,BELOW)
         run-time options.                                                                                        
         From compile unit A181 at entry point A181 at compile unit offset +000000C2 at entry offset +000000C2 at
         address .........                                                                                        
...
occurs after installing maintenance to Easytrieve 6.4

Environment

Easytrieve Plus Report Generator, release 6.4

Resolution

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',                                      
//             DISP=SHR                                                 
//CAILIB   DD  DSN=your.EZTP64.CAILIB,                             
//             DISP=SHR                                                 
//C$A64LLD DD  DSN=your.EZTP64.C$A64LLD,                           
//             DISP=SHR                                                 
//LELIB    DD  DSN='CEE.SCEELKED',                                      
//             DISP=SHR                                                 
//SYSLMOD  DD  DSN=your.EZTP64.CAILIB,                             
//             DISP=SHR                                                  
//SYSLIN   DD  *                                                        
   INCLUDE C$A64LLD(EZTPA181)                                           
   ENTRY A181                                                           
   NAME EZTPA181(R)                                                     
   INCLUDE C$A64LLD(EZTPD142)                                           
   INCLUDE C$A64LLD(EZTPD141)                                           
   INCLUDE LELIB(CEESG007)                                              
   INCLUDE LELIB(CEEUOPT)                                               
   ENTRY D142                                                           
   NAME EZTPD142(R)                                                      
   INCLUDE C$A64LLD(EZTPD143)                                           
   INCLUDE C$A64LLD(EZTPD143)                                           
/*                                                                       
...

Additional Information

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.