Exits and external calls

This section introduces exits and external call as well as the conventions used for programming.

External calls and exits are used to:

  • Extend session execution by referencing data external to the parameter settings
  • Repeat an action for all or for a large percentage of the set of Input- Event and Output-Event segments

An external call is a programmable function called by the DML (Data Manipulation Language) commands in the Transformation and Enrichment-Rules. Only one external call type module is available.

An exit is a programmable function called from a fixed point in the processing phases of a transformation session. Several exits are available and their call points are explained in this document.

The source files of these functions are located in the exit directory (or the SRCLIB library for MVS) of your Rule Engine execution environment. Exits and external calls can be written in either C or COBOL, depending on the functions. The list of available exits depends on the type of implementation (JMS mode, MQSeries mode or File mode).

During a session, you can execute multiple exits in both languages (C and COBOL). To activate the required modules, you must enter the relevant keyword values as follows:

  • yes_c for C module
  • yes_cobol for COBOL module
  • yes_rdj53 for COBOL module compatible with RDJ 1.5.3.2 version

Each exit is coded in a separate source with a specific name. In some cases, a given function can exist in both languages and have the same name but with a different extension.

Some alphanumeric fields may have different descriptions depending on the programing language and the Latin or UTF-16 format.

Language / Manager

ASCII/EBCDIC

UTF-16

C

char

wchar_t

COBOL

PIC X

PIC N

Consequently, the MOVE instruction will differ for Latin and UTF-16 formats.

Example:

  • Latin format:
    • MOVE 'NOMEXIT'  TO L-CRE (956:7).
    • MOVE REC-L10TYPTRT) TO REC-L10ZONERR.
  • UTF-16 format:
    • MOVE N'NOMEXIT' TO L-CRE (956:7).
    • MOVE FUNCTION NATIONAL-OF(REC-L10TYPTRT-X) TO REC-L10ZONERR.
Note   REC1-L10TYPTRT-X is the alphanumeric redefinition of the REC-L10TYPTRT numeric field.

Related Links