In this page:
Table of Contents |
---|
Overview
Warehouse Cash Activity inbound interface is designed to load and update data in CASHDBO.CASH_ACTIVITY database table.
Incoming message format: EagleML (WarehouseCashActivity complex type).
Anchor | ||||
---|---|---|---|---|
|
EagleML Processing Sequence
Warehouse Cash Activity is loaded into DB via eagle_ml-2-0_default_in_xml_warehouse_preproc in two steps:
- XSLT transformation. XSLT rule 'eagle_default/in/xml/xslt/wrh_egl_gen_interface3.xsl' is used.
- Loading data into the database. The 'eagle_default/in/xml/xml-warehouse_v2.xml' rule is used.
To load or update data in Warehouse Cash Activity database tables send an EagleML message into the eagle_ml-2-0_default_in_xml_warehouse_preproc stream.
Expand | ||||||
---|---|---|---|---|---|---|
| ||||||
|
Anchor | ||||
---|---|---|---|---|
|
Warehouse Cash Activity is loaded to DB with the following streams:
- eagle_default_in_csv_warehouse - this is PRF stream which consist of two steps transform and load
- eagle_default_in_csv_warehouse_t - transformation CSV to XMLDBAPI request
- csv-wrhs_cash_activity_xmldbapi.xml rule
- eagle_ml-2-0_default_in_xml_warehouse
- Loading data into the database. The 'eagle_default/in/xml/xml-dbdirect_invar.xml' rule is used
To load or update data in Warehouse Cash Activity tables, send your CSV message to the eagle_default_in_csv_warehouse stream
Master/Original Transaction Number Logic
Single Mode Load
Values in the incoming file | Values loaded to DB |
---|---|
Both values are not set or missing originalTransactionNumber is NULL | You will get the following error: Original Transaction Number cannot be null |
Only original transaction number set originalTransactionNumber = FILLED | - masterTransactionNum copies the originalTransactionNumber value: - if you send the same message again, the values will remain the same (as from the file): - change originalTransactionNumber value to FILLED_B, once again masterTransactionNum copies this value and a new record will be created: |
Both values are set: originalTransactionNumber = FILLED_C | - first load: values from file loaded into DB: - if you change originalTransactionNumber to FILLED_Е, the record will be updated updated with the new originalTransactionNumber value: - if you change masterTransactionNum to FILLED_F, the record will be updated with the new masterTransactionNum value: - if you change both: originalTransactionNumber to FILLED_G and masterTransactionNum to FILLED_H, a new record will be created: |
Batch Mode Load
If no masterTransactionNum value is provided in the file for load, masterTransactionNum value will reflect the originalTransactionNumber value from the record:
Anchor | ||||
---|---|---|---|---|
|
<securityAlias> should not be specified in the incoming EagleML message.
Refer to Security Resolution for Warehouse Objects
Anchor | ||||
---|---|---|---|---|
|
Refer to Entity Resolution for Warehouse Objects
The Reflexive flow processing
is depended on the System Control value, systemControl is required element and should have the same value as cashdbo.cash_activity.SPD_PERF_FLOW_RULE field
Based on CSA_EGL_GEN_INTERFACE stored procedure calculateReflexiveFlowsSwitch flag works with systemControl node that can be equaled 0,1,2,3,5,6,7.
Additional details:
If systemControl equals 3 or 7 then BASE_INCOME_FLOW, BASE_PRINCIPAL_FLOW, BASE_TOTAL_FLOW, LOCAL_INCOME_FLOW, LOCAL_PRINCIPAL_FLOW, LOCAL_TOTAL_FLOW, SYS_TOTAL_FLOW, SYS_PRINCIPAL_FLOW, SYS_INCOME_FLOW fields set as 0 in cash_activity table.
If systemControl equals 0,1,2,5,6 then spawn record is inserted:
if systemControl equals 1,5 then
BASE_INCOME_FLOW, BASE_PRINCIPAL_FLOW, BASE_TOTAL_FLOW, LOCAL_INCOME_FLOW, LOCAL_PRINCIPAL_FLOW, LOCAL_TOTAL_FLOW, SYS_TOTAL_FLOW, SYS_PRINCIPAL_FLOW, SYS_INCOME_FLOW fields set as 0;
if systemControl equals 0,2,6 then
BASE_INCOME_FLOW, BASE_PRINCIPAL_FLOW, BASE_TOTAL_FLOW, LOCAL_INCOME_FLOW, LOCAL_PRINCIPAL_FLOW, LOCAL_TOTAL_FLOW, SYS_TOTAL_FLOW, SYS_PRINCIPAL_FLOW, SYS_INCOME_FLOW fields insert with inverted value with minus sign.