Trapping abends issued by application programs

If your HSSR application program is written in COBOL or PL/I language, you can request that most abends that can happen during the processing of your application program be "trapped" (in other words, you can request that abends be intercepted and hurdled by the high-level language software, and that your application program get back control after an abend).

Abends are usually trapped in one of the following ways:

  • By using the runtime option STAE (for OS PL/I V2 programs)
  • By using the runtime option TRAP(ON) (for COBOL or PL/I programs running under Language Environment®)

If you trap abends for your application programs, you might perhaps want to exclude abends issued by HSSR Engine. The reason is because the purpose of the ABEND macros that HSSR Engine issues is to result in abends; that is, not to return to the application program (in this respect, HSSR Engine is similar to IMS).

OS PL/I V2 programs

If you want to exclude abends in HSSR Engine from trapping for OS PL/I V2 programs, update the IBMBXITA Assembler user exit to include the user abend code of IMS High Performance Unload in the list of user-abend codes that should be percolated. For detailed descriptions of IBMBXITA, see OS PL/I V2 Programming Guide.

COBOL or PL/I programs running under Language Environment

If you want to exclude abends in HSSR Engine from the trapping for COBOL or PL/I programs running under Language Environment (LE), update the LE's CEEDOPT Assembler module that establishes installation defaults. With the ABPERC= keyword, include the user abend code of IMS High Performance Unload in the list of abend codes that should be percolated. For detailed descriptions of CEEDOPT and of the ABPERC runtime option, see z/OS® Language Environment Programming Guide. As the Programming Guide explains, you can also request percolation of the abend code of HSSR Engine in:

  • The CEEUOPT Assembler module
  • The Assembler user exit CEEBXITA