Table of Contents

Search

  1. preface
  2. Introduction
  3. Defining a System
  4. Flattening IDTs
  5. Link Tables
  6. Loading a System
  7. Static Clustering
  8. Simple Search
  9. Search Performance
  10. Miscellaneous Issues
  11. Limitations
  12. Error Messages

User Exits

User Exits

User Exits (UE) provide a way to extend the capabilities of IIR at specific points in its processing logic. IIR supports two types of User Exits:
  • User Source Exit
  • Transform Exit
User Exits must conform to a specific protocol in order to communicate with IIR. They are written in C and compiled and linked as a DLL/shared library. IIR will load the UE and call a predefined entry point when a "service" is required from the exit.
The syntax, parameters, details of operations and response codes for User Exits are only available on request.

User Source Exit

A User Source Exit (USE) is used to provide access to User Source Tables. It may use any valid SQL supported by the host DBMS.
USEs should only be used when IIR does not support the type of SQL access required. For example, if you wish to join and merge several tables in one operation.
USEs can also be used to access heterogeneous database architectures. For example, to load an IDT on an Oracle database using source data read from UDB.
USEs can only be defined for NoSync systems.
USEs must be coded in a multi-threaded manner because they will be called from a thread in the Table Loader. For example, a USE that connects to Oracle must allocate and use a thread context.
By coding a USE, the user accepts responsibility for providing all services for User Source Table access that IIR requires. If the protocol is not strictly adhered to, a loss of IIR data integrity will result. An erroneous user exit may cause the Table Loader or Update Synchronizer to terminate abnormally.

Transform Exit

A Transform Exit (TE) is used to alter a record read from the source database prior to insertion into the IDT.
The TE exit is called after reading a record from the source database and before any field level transforms have been performed. The exit is a "record level" exit, meaning that it has access to the entire record.
Upon return from the exit, IIR will perform field-level transforms while converting the view record into IDT layout.
The normal use for a TE is to insert data into a new field. A new field can be created with the Filler transform by specifying a name, format and length. The field can then be referenced in the TE.
The user-exit is enabled by adding a user-exit transform definition. For example,
transform filler credit C(10), user-exit ("myexit.dll myep")
defines a field called
"credit"
which can be populated by the user-exit.

0 COMMENTS

We’d like to hear from you!