EGL Development User Group

EGL Development User Group

EGL Development User Group

The EGL Development User Group is dedicated to sharing news, knowledge, and insights regarding the EGL language and Business Developer product. Consisting of IBMers, HCL, and users, this community collaborates to advance the EGL ecosystem.

 View Only

Introducing EGL Wrappers For z/VSE

By Jiyong Huang posted Wed April 01, 2020 09:22 PM

  

A new feature has been added to Rational COBOL Runtime For z/VSE that can improve the efficiency of your running code. EGL Wrappers wrap around a non-EGL main program and handle the initialisation and destruction of the Runtime. This means that every time your non-EGL main program calls an EGL subprogram, the Runtime will not be reinitialised and destroyed again. It will only be initialised once, when the main program starts and destroyed when the main program ends.

 

Use of this feature requires PTF UI42496 to be applied to the Rational COBOL Runtime For z/VSE

 

To use this new feature, you simply re-link your non-EGL main program with the wrapper program ELAWBAT and it's dependency ELAWREGA. The source code for ELAWBAT (COBOL) and ELAWREGA (Assembler) is included with the Runtime. In the source code for both programs substitute NONVGRTN with the name of your non-EGL main program and recompile both programs. Then, use the following linkage to create the PHASE for your main program (where NONVGRTN is the name of your non-EGL main program)

 

// LIBDEF PHASE,CATALOG=MYLIB
     PHASE NONVGRTN,*
     INCLUDE NONVGRTN

     INCLUDE ELAWBAT

     INCLUDE ELAWREGA
     INCLUDE ELARSINV
     INCLUDE ELARSVCS
     INCLUDE ELAASSGN
     INCLUDE ELAASADR
    ENTRY ELAWBAT
// EXEC LNKEDT,SIZE=512K,PARM='AMODE=31,RMODE=ANY'
 /*

Alternatively, you can use the compiled versions of ELAWBAT and ELAWREGA that are also provided with the runtime. In this case, you will need to edit the OBJ of your non-EGL main program and change all references to it's name to NONVGRTN. Then use the linkage above to create the PHASE for your program. If you wish, you can also use the PLX version of ELAWREGA called ELAWREG1 (supplied with Runtime).

 

More details can be found in the comments section for ELAWBAT. Please note that there is an error in the comments regarding the linkage step. You will also need to include ELAWBAT, as per the linkage step above. This comment will be corrected in the next PTF.

 

0 comments
6 views

Permalink