In this page:
Table of Contents |
---|
Anchor | ||||
---|---|---|---|---|
|
The diagram below illustrates the Warehouse Objects structure and the relationships between them.
The following Warehouse objects are available:
Object Type | Inbound Rule | Outbound Rule | Bind File Name | SP Name (ORA DB) | Batch Mode Support | Batch Key Pattern | Batch Key Example |
---|---|---|---|---|---|---|---|
Warehouse Open Lot | xml-warehouse_v2.xml | extract_warehouse_openlot.xml | bind-std_interfaces_dbdir.xml | HOLDINGDBO.EGL_GEN_HOLDING.LOT_EGL_GEN_INTERFACE | Y | entityId^effectiveDate^sourceName | my_entity^20140120^EAGLE PACE |
Warehouse Position | xml-warehouse_v2.xml | extract_warehouse_position.xml | bind-std_interfaces_dbdir.xml | HOLDINGDBO.EGL_GEN_HOLDING.POS_EGL_GEN_INTERFACE | Y | entityId^effectiveDate^sourceName | my_entity^20140120^EAGLE PACE |
Warehouse Trade | xml-warehouse_v2.xml | extract_warehouse_trade.xml | bind-std_interfaces_dbdir.xml | TRADESDBO.EGL_GEN_TRADE.TRD_EGL_GEN_INTERFACE | Y | entityId^effectiveDate^sourceName | my_entity^20140120^EAGLE PACE |
Warehouse Close Lot | xml-warehouse_v2.xml | extract_warehouse_closelot.xml | bind-std_interfaces_dbdir.xml | TRADESDBO.EGL_GEN_TRADE.CLL_EGL_GEN_INTERFACE | Y | entityId^effectiveDate^sourceName | my_entity^20140120^EAGLE PACE |
Warehouse Cash Activity | xml-warehouse_v2.xml | extract_warehouse_cash_activity.xml | bind-std_interfaces_dbdir.xml | CASHDBO.EGL_GEN_CASH.CSA_EGL_GEN_INTERFACE | Y | entityId^effectiveDate^sourceName | |
Warehouse Performance | xml-warehouse_v2.xml | extract_warehouse_performance.xml | bind-std_interfaces_dbdir.xml | PERFORMDBO.EGL_GEN_PERFORM.PRO_EGL_GEN_INTERFACE | Y | entityId^^endEffectiveDate^sourceName^frequencyCode^dictionaryName^perfSummaryType | ENTVALUE^^20130713^EAGLE PACE^D^DICTIONARY1^S |
Warehouse Broker Trade Quote | xml-wh_brokertradequote_v2.xml | extract_warehouse_brokertradequote.xml | bind_trade_quote.xml | TRADESDBO.TRADE_QUOTE_UPLOAD.TRADE_QUOTE_INSUPD | Y | masterTicketNumber | 1200303M |
Warehouse Pending Trade | xml-warehouse_v2.xml | extract_warehouse_pending_trades.xml | bind-wrhs_pending_trade.xml | TRADESDBO.PENDING_TRADE.INS_PENDING_TRADE | |||
Warehouse Cash Flow Projection | xml-warehouse_v2.xml | extract_warehouse_cash_flow_proj.xml | bind_wrhs_cashflowproj.xml | CASHDBO.EGL_GEN_CASH_PROJ.INS_UPD_CASH_FLOW_PROJ | |||
Warehouse GL Balances | xml-warehouse_v2.xml | extract_warehouse_gl_detail_posting.xml | bind_wrhs_gl_balanes.xml | LEDGERDBO.SPD_LEDGER.LED_EGL_GEN_INTERFACE | |||
Warehouse NAV | xml-warehouse_v2.xml | extract_warehouse_nav_multi.xml | bind_wrhs_nav.xml | HOLDINGDBO.EGL_GEN_HOLDING.MFP_NAV_PERF_EGL_GEN | |||
Warehouse NAV Multi | xml-warehouse_v2.xml | extract_warehouse_nav.xml | bind_wrhs_nav_multi.xml | ESTAR.ESTAR_PKG_NAV.INS_UPD_NAV_MULTI | |||
Custody Restriction Activity | - (extract only) | extract_warehouse_custody_activity.xml | |||||
Custody Restriction Balance | - (extract only) | extract_warehouse_custody_balance.xml |
Common Elements
Element | Optional/Required | Value type |
---|---|---|
sourceName | Required | string |
updateSource | Optional | string |
effectiveDate | Required | date |
entityId | Required | string |
Asset Identifiers | Required | Asset Identifiers Model Group |
Anchor | ||||
---|---|---|---|---|
|
EagleML Processing Sequence
All the Warehouse are 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 (xml-wh_brokertradequote_v2.xml for Broker Trade Quotes).
Info | ||
---|---|---|
| ||
To load or update data in Warehouse database tables send an EagleML message into the eagle_ml-2-0_default_in_xml_warehouse_preproc stream. Any overlay includes you were using with eagle_ml-2-0_default_in_xml_warehouse will be "taken" by eagle_ml-2-0_default_in_xml_warehouse_preproc , thus providing backward compatibility. |
Expand | ||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||
Warehouse objects (supported objects are listed in the table below) are loaded into DB via the following streams:
To load or update data in Warehouse tables, send your CSV message to the eagle_default_in_csv_warehouse stream.
Warehouse Performance as PIPE is loaded to database with the following streams:
To load or update data in Warehouse Performance tables, send your pipe-edelimited message to the eagle_default_in_pipe_warehouseCLP stream. Warehouse Position as PIPE is loaded to database with the following streams:
To load or update data in Warehouse Position tables, send your pipe-delimited message to the eagle_default_in_pipe_warehouse stream.
|
Anchor | ||||
---|---|---|---|---|
|
Info | ||
---|---|---|
| ||
Some of the objects do not support all load modes. Please refer to their specification pages to get more details. |
Anchor | ||||
---|---|---|---|---|
|
In batch mode multiple rows can be loaded into DB by one EagleML message. In this mode the warehouseTransaction element usually contains several complex elements, specific for each object type, for example, warehouseCloseLot.
The data from each element will be loaded into a separate database row.
Info | ||
---|---|---|
| ||
The stored procedure for batch mode supports only inserting data into the database. All data is inserted by batch commit, which means one transaction for all records specified in one incoming message. You can not UPDATE the data in batch mode. Use Single Row mode to do that. |
Anchor | ||||
---|---|---|---|---|
|
The complex objects in the batch are "tied" together by the batch key element.
Example of use:
Code Block | ||
---|---|---|
| ||
<warehouseTransaction> <header> <batchKey>entity^20150306^EAGLE PACE</batchKey> <objectType>WarehouseCloseLot</objectType> </header> <warehouseCloseLot> |
Info | ||
---|---|---|
| ||
The Batch key pattern is different for all Warehouse objects. To choose the right one, please refer to their wiki pages. |
When you load a Warehouse in batch mode, first of all the stream takes the warehouseTransaction/batchKey element from your incoming EagleML message, resolves a specific DB key from the batch key and deletes all records with the same DB key from DB (if they exist). Only then inserting new records is performed.
Using Batch Error Mode
If some errors occur when you load a Warehouse object in Batch mode, there are two modes to display them:
- Default mode: only the first error is reported in the Task Status Response (TSR).
- Batch Error mode: all errors are reported in the TSR. To enable this mode add the following line to {}w_config_custom.inc:
Code Block | ||
---|---|---|
| ||
<CODE> :EAGLEML_WAREHOUSE_BATCH_ERROR_MODE::='Y'; </CODE> |
See a comparison of error reports for Default mode vs Batch Error mode
Anchor | ||||
---|---|---|---|---|
|
The UPSERT mode is used if the Batch Key element (warehouseTransaction/batchKey element) is not present or null in the incoming EagleML message. The message should contain a logical unique Object key for each Warehouse object instead.
For single row mode the warehouseTransaction node can contain only one specific complex element (e.g. warehouseCloseLot).
Anchor | ||||
---|---|---|---|---|
|
Info | ||
---|---|---|
| ||
Procedure Mode setting is supported for Warehouse Open Lot and Warehouse Position only. |
The mode - INSERT or UPDATE - can be defined automatically or by the Procedure Mode element .
Leave the Procedure Mode element (warehouseTransaction/.../procedureMode) empty and in this case the SP will decide itself whether to update the data in DB tables (if the row already exists) or to insert it (if it does not).
Valid values: 'INSERT', 'UPDATE'.
Grouped Single Mode
Grouped single mode is the load mode when a group of records is sent and loaded to DB separately (unlike Batch mode, when several records are considered as a batch and are sent in one event and are loaded to DB in one event.
- Before load all position details are deleted
- After load RollUp is performed
In EagleML this structure looks like several <warehousePosition> clusters under a single <warehouseTransaction> message. Batch key has no sense, so the header should look like this:
Code Block | ||
---|---|---|
| ||
<warehouseTransaction>
<header>
<objectType>WarehouseCloseLot</objectType>
</header>
<warehouseCloseLot> |
Sub-Batch Load Mode
In Sub-Batch load mode the incoming file is split into several files, one file for each batch (the data for one batch cannot be split into different files!) and each batch is split into sub-batches to decrease its size:
Batch Keys for these sub-batches are enhanced with the first three security alias numbers.
Warning |
---|
Important!
|