EndMapper (v1) Data Persistence Interface

Note: EndMapper v1 has been deprecated, but is included for use in legacy applications. Any new development should use EndMapper v2.

EndMapper is responsible for persisting all transactions and batches that have been mapped into ISF. EndMapper is capable of persisting the transactions and batches with no additional input from the mapper. However, a mapper may supply additional data for EndMapper to include when it creates the transactions and batches by passing additional information on the IBM® App Connect Enterprise Environment tree.

The EndMapper uses the following environment tree location for the root of mapping related data for persistence to the database:
Environment.PMP.Variables.MapDBData
Note: The reference variable, rMapDBData, is also used to refer to Environment.PMP.Variables.MapDBData.
EndMapper supports the persistence of data relating to all the main mapping objects under the following environment locations:
Table 1. Environment locations for the main mapping objects
Object type Environment location
Transmissions rMapDBData.PT
Fragments rMapDBData.FRAG
Batches rMapDBData.BAT[1..n]
Transactions (Batch) rMapDBData.BAT[1..n].TXN[1..n]
Transactions (Non Batch) rMapDBData.TXN
Securities Transactions rMapDBData.TXN
Payment Transactions rMapDBData.TXN
Under these environment locations, the following may be specified:
  • DBRecord.OBJ.<column> = <value> where:
    <column>
    is any valid OBJ_BASE table column
  • DBRecord.<obj type>.<column> = <value> where:
    <obj type>
    is the name of the specific object table
    • TRANSMISSION
    • FRAGMENT
    • BATCH
    • TRANSACTION
    <column>
    is a valid column of the view that will be used for insert
  • OBJ_VALUE[1..n].CATEGORY = <category>
  • OBJ_VALUE[1..n].KEY = <key>
  • OBJ_VALUE[1..n].SMALL_VALUE = <small_value>
  • OBJ_VALUE[1..n].LOB_VALUE = <lob_value>
  • ERROR [1..n].TYPE = <type>
  • ERROR [1..n].DESCRIPTION = <description>
Note: For backwards compatibility, the EndMapper also supports the following environment locations:
Table 2. Environment locations still supported by EndMapper
Object type Environment location
Transmissions Environment.PMP.Variables.PT
Fragments1  
Batches2 Environment.PMP.Variables.BAT
Transactions3 Environment.PMP.Variables.DBRecord[1..n]
Errors4 Environment.PMP.Variables.Mapper.Errors[1..n]
Notes:
  1. Not supported
  2. Only supported for one batch
  3. Location is not dependent on batch containment
  4. Errors logged against either transaction or transmission only
For transactions and derived objects, EndMapper needs to know which transaction view to use for object insertion. EndMapper provides functions for the mapper to call:
CREATE PROCEDURE SetDBRecordPayment(IN rDBRecord REFERENCE);
CREATE PROCEDURE SetDBRecordSecurities(IN rDBRecord REFERENCE);
CREATE PROCEDURE SetDBRecordBaseTxn(IN rDBRecord REFERENCE);

Examples

Transmission
SET rMapDBData.PT.DBRecord.OBJ.CID = 'trans_ref';
SET rMapDBData.PT.DBRecord.TRANSMISSION.FILEADDRESS = 'trans_file_addr';
SET rMapDBData.PT.OBJ_VALUE[1].CATEGORY = 'trans_cat';
SET rMapDBData.PT.OBJ_VALUE[1].KEY = 'trans_key';
SET rMapDBData.PT.OBJ_VALUE[1].SMALL_VALUE = 'trans_val';
SET rMapDBData.PT.ERROR[1].TYPE = 'trans_err_type';
SET rMapDBData.PT.ERROR[1].TYPE = 'trans_err_desc';
Batch with transaction
SET rMapDBData.BAT[n].DBRecord.OBJ.CID = 'bat_ref';
SET rMapDBData.BAT[n].DBRecord.BATCH.BATCH_DATE = bat_date; 
SET rMapDBData.BAT[n].OBJ_VALUE[1].CATEGORY = 'bat_cat';
SET rMapDBData.BAT[n].OBJ_VALUE[1].KEY = 'bat_key';
SET rMapDBData.BAT[n].OBJ_VALUE[1].SMALL_VALUE = 'bat_val';
SET rMapDBData.BAT[n].ERROR[1].TYPE = 'bat_err_type';
SET rMapDBData.BAT[n].ERROR[1].TYPE = 'bat_err_desc';
SET rMapDBData.BAT[n].TXN[n].DBRecord.OBJ.CID = 'txn_ref';
SET rMapDBData.BAT[n].TXN[n].DBRecord.TRANSACTION.ALT_ID = 'txn_altid';
SET rMapDBData.BAT[n].TXN[n].OBJ_VALUE[1].CATEGORY = 'txn_cat';
SET rMapDBData.BAT[n].TXN[n].OBJ_VALUE[1].KEY = 'txn_key';
SET rMapDBData.BAT[n].TXN[n].OBJ_VALUE[1].SMALL_VALUE = 'txn_val';
SET rMapDBData.BAT[n].TXN[n].ERROR[1].TYPE = 'txn_err_type';
SET rMapDBData.BAT[n].TXN[n].ERROR[1].TYPE = 'txn_err_desc';