EagleML Release Notes - December 2020
Enhancements:
SDP-43277: Implemented Trade Principal check for MBS and ILB securities
An optional Trade Principal Check was implemented for MBS and ILB securities.
For ILB securities (DBFLTP), the new logic calculates the Principal based on the Index Ratio and compares it to the Principal from the incoming file, taking into account the provided or default Tolerance.
For MBS securities (DBFBFB, DBFBPO, DBFBIO, DBFBAL, DBFBCC, DBIBTR), the logic calculates the Principal based on the Factor and compares it to the Principal from the incoming file taking into account the provided or default Tolerance.
A new processing option, ALLOW_PRINCIPAL_CHECK, on the incoming message enables the Principal Check logic. The corresponding global parameter, W_ACCTTRADE_ALLOW_PRINCIPAL_CHECK (Y/N), is also supported via the w_config_custom.inc.
An additional processing option, PRINCIPAL_CHECK_TOLERANCE_VALUE, on the incoming message adds the Tolerance value. By default, the Tolerance is 0. The corresponding global parameter is W_ACCTTRADE_TOLERANCE_VALUE. The required tolerance value should be set accordingly, for example a decimal value of 0.03 is equivalent to 3%.
Example of usage:
<accountingTransaction>
<header>
<objectType>AccountingTrade</objectType>
<processingOptions>ALLOW_PRINCIPAL_CHECK,PRINCIPAL_CHECK_TOLERANCE_VALUE=0.03</processingOptions>
</header>
<accountingTrade>
</accountingTrade>
</accountingTransaction>
Files added:
eagle_default/in/include/principal_check.inc
Files changed:
eagle_default/in/include/accttrade_routing_check.inc
eagle_default/in/xml/xml-accttrade_buy.xml
eagle_default/in/xml/xml-accttrade_sell.xml
SDP-43887: The PRICINGREPORTEXTRACT was enhanced to support scenarios where the Security is Priced At Cost
The PRICINGREPORTEXTRACT supports scenarios where the Security is Priced At Cost, Manually Priced, sourced by a vendor and a gold copied price. The price source and price description fields returned resolves the Price At Cost source from the value from the Portfolio Valuation Table and the other sources resolve from the Price Rule Securities Table.
File changed:
eagle_ml-2-0_cm/out/tagvalue/extract_pricing_report.inc
SDP-44741: PRICINGREPORTEXTRACT was refined in order to address instances where the Active Price Rule is not set to Y, and Price At Cost instances are not within the hierarchy
The logic has been revised to support additional cases where the Source Override has been applied; additional workflows for Prior Day Gold Copy; and the application of an override that is intentionally executed outside the predefined hierarchy.
The fields impacted by this change include:
targetSourceName
targetSourceDescription
priceSource
priceSourceDescription
priceType
activePriceSourceName
activePriceSourceDescription
The change delivered will now return additional results when the use cases above occur:
priceHierarchyRuleName
primarySourceName
primarySourceDescription
secondarySourceName
secondarySourceDescription
primaryPrice
primaryPriceType
secondaryPrice
secondaryPriceType
File changed:
eagle_ml-2-0_cm/out/tagvalue/extract_pricing_report.inc
SDP-44352: FX Rate resolution was corrected for the Asset Specific Miscellaneous Income and the Asset Specific Miscellaneous Expense
When supplying the calculateBaseAmountsFlag with a value set to Y, the FX rate lookup used to retrieve the FX source was defaulted to EAGLE PACE and the END_DATE default value used was set to a future date as part of FX Rate resolution. As a result, the incorrect FX rate value was retrieved or not resolved in cases where an EAGLE PACE value did not exist. The issue was fixed and the correct FX source is resolved by the entity lookup now, the most recent FX rate is being retrieved now and the core lookup defaults to the Trade Date (Tag35) as the End Date.
Files changed:
eagle_default/in/include/csv-cash_misc_inc_exp.inc
SDP-44272: Multileg Corporate Actions load process was enhanced
The Multileg Corporate Action load process was optimized to skip unnecessary edit checks and redundant SQL requests related to the prior version of the rebook logic. The update logic was also improved and the Sub Priority value is now resolved from the database.
The two database tables, TRADESDBO. CORP_ACT_ANNOUNCEMENT_HIST and TRADESDBO. CORP_ACT_HIST are synchronized on the Update in order to enable future support for the CANCEL and lookup logic for a MultilegCA.
Files added:
eagle_default/in/xml/include/xml-ref_ca_common.inc
eagle_default/in/xml/xml-ref_multileg_ca.xml
SDP-44170: Accounting Corporate Action Interface was improved
The AccountingCA inbound interface was corrected to allow data load via XML elements for additional fields supported in processing:
EagleML/referenceTransaction/genericCA/cpGrossAmt
EagleML/referenceTransaction/genericCA/cpFreq
EagleML/referenceTransaction/genericCA/cpNetAmt
File changed:
eagle_default/in/xml/xml-ref_ca.xml
SDP-43303: Updated the Ontology for the WarehouseOpenLot interface to support the Income model
Updated the Ontology files for the WarehouseOpenLot Outbound EDS interface adding new fields from the table HOLDINGDBO.POSITION_INCOME_LOT:
warehouseTransaction/warehouseOpenLot/income/piUserFloat1
warehouseTransaction/warehouseOpenLot/income/piUserFloat1
warehouseTransaction/warehouseOpenLot/income/piUserFloat2
warehouseTransaction/warehouseOpenLot/income/piUserFloat3
warehouseTransaction/warehouseOpenLot/income/piUserFloat4
warehouseTransaction/warehouseOpenLot/income/piUserFloat5
warehouseTransaction/warehouseOpenLot/income/piUserFloat6
warehouseTransaction/warehouseOpenLot/income/piUserFloat7
warehouseTransaction/warehouseOpenLot/income/piUserFloat8
warehouseTransaction/warehouseOpenLot/income/piUserFloat9
warehouseTransaction/warehouseOpenLot/income/piUserFloat10
warehouseTransaction/warehouseOpenLot/income/piUserFloat11
warehouseTransaction/warehouseOpenLot/income/piUserFloat12
warehouseTransaction/warehouseOpenLot/income/piUserFloat13
warehouseTransaction/warehouseOpenLot/income/piUserFloat14
warehouseTransaction/warehouseOpenLot/income/piUserFloat15
warehouseTransaction/warehouseOpenLot/income/piUserFloat16
warehouseTransaction/warehouseOpenLot/income/piUserFloat17
warehouseTransaction/warehouseOpenLot/income/piUserFloat18
warehouseTransaction/warehouseOpenLot/income/piUserFloat19
warehouseTransaction/warehouseOpenLot/income/piUserFloat20
warehouseTransaction/warehouseOpenLot/income/piUserFloat21
warehouseTransaction/warehouseOpenLot/income/piUserFloat22
warehouseTransaction/warehouseOpenLot/income/piUserFloat23
warehouseTransaction/warehouseOpenLot/income/piUserFloat24
warehouseTransaction/warehouseOpenLot/income/piUserDate1
warehouseTransaction/warehouseOpenLot/income/piUserDate2
warehouseTransaction/warehouseOpenLot/income/piUserDate3
Files changed:
dynamic/metadata/core/ontology/eagle-vocab-wh.json
dynamic/metadata/core/ontology/eagle-vocab-wh-shared.json
dynamic/metadata/core/ontology/definition/eagle-vocab-definition-wh.json
dynamic/metadata/core/ontology/definition/eagle-vocab-definition-wh-shared.json
dynamic/metadata/core/ontology/warehouse/warehouseopenlot.json
dynamic/metadata/core/ontology/warehouse/warehouseopenlot-models.json
SDP-43302: Updated Ontology for WarehousePosition interface to support the Income Detail model
Updated the Ontology files for the WarehousePosition Outbound EDS interface adding support for the additional database table HOLDINGDBO.POSITION_INCOME_DEATIL. The fields supported include:
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat1
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat1
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat2
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat3
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat4
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat5
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat6
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat7
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat8
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat9
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat10
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat11
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat12
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat13
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat14
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat15
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat16
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat17
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat18
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat19
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat20
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat21
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat22
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat23
warehouseTransaction/warehousePosition/incomeDetail/piUserFloat24
warehouseTransaction/warehousePosition/incomeDetail/piUserGroupChar1
warehouseTransaction/warehousePosition/incomeDetail/piUserGroupChar2
warehouseTransaction/warehousePosition/incomeDetail/piUserGroupChar3
warehouseTransaction/warehousePosition/incomeDetail/piUserGroupChar4
warehouseTransaction/warehousePosition/incomeDetail/piUserGroupChar5
warehouseTransaction/warehousePosition/incomeDetail/piUserGroupChar6
Files changed:
dynamic/metadata/core/ontology/eagle-vocab-wh.json
dynamic/metadata/core/ontology/eagle-vocab-wh-shared.json
dynamic/metadata/core/ontology/definition/eagle-vocab-definition-wh.json
dynamic/metadata/core/ontology/definition/eagle-vocab-definition-wh-shared.json
dynamic/metadata/core/ontology/warehouse/warehouseposition.json
dynamic/metadata/core/ontology/warehouse/warehouseposition-models.json
SDP-43850: The WASHSALE Interface and WRHSWASHSALETRADEEXTRACT rules were updated to match the EagleML XSD
The WashSale Inbound interfaces and the WRHSWASHSALETRADEEXTRACT were updated to correct XSD validation errors and match the EagleML XSD. The order of elements also was corrected.
Files changed:
eagle_default/in/include/washsale_aliases.inc
eagle_default/in/include/washsale_coltags.inc
eagle_ml-2-0_cm/out/xml/t_wash_sale_streaming.inc
eagle_ml-2-0_cm/out/tagvalue/extract_entity_bank_relationship.inc
eagle_ml-2-0_cm/out/xml/t_warehouse_washsale_trade_streaming.inc
eagle_ml-2-0_cm/out/xml/t_warehouse_washsale_trade.xml
SDP-43848: The accountId element type was changed from an integer to a string as part of the Accounting XSD and Extracts
The XSD schema did not match Ontology. The XSD schema contained two elements: accountId with a different types: xsd:string for Warehouse types; and xsd:integer for Accounting types. The Ontology does not allow multiple elements to have the same name and different types. To correct this issue, the type of the accountId element was changed to xsd:string for Accounting types to match the Ontology resource.
Files changed:
eagle_ml-2-0_cm/out/xml/t_acct_gl_activity_streaming.inc
eagle_ml-2-0_cm/out/xml/t_acct_compilance_2a7_pricing_report_streaming.inc
eagle_ml-2-0_cm/out/xml/t_acct_trial_balance_streaming.inc
SDP-43794: The variationMarginFlag was added for SMF Objects to correct the XSD and sync-up with the new metadata
The XSD schema had two elements for the variationMargin with different types: xsd:decimal for Warehouse objects; and type YesNoOptionEnum for SMF objects. The Ontology does not allow multiple elements with the same name and different types. To fix this issue, the type of XSD element variationMargin was changed from YesNoOptionEnum to xsd:decimal for the SMF objects. Also, a new element, variationMarginFlag, was added to the XSD schema for the GenericSMF and MultilegSMF objects for backward compatibility. When both the variationMargin and the variationMarginFlag are to be used, the variationMarginFlag should take precedence. The mapping for the inbound and outbound SMF interfaces was updated and both elements variationMargin and variationMarginFlag are mapped to the same database field SECURITYDBO.DERIVATIVES.VAR_MARGIN.
XPath=EagleML/referenceTransaction/genericSMF/variationMarginFlag
Files changed:
eagle_ml-2-0_cm/out/tagvalue/extract_entity_bank_relationship.inc
eagle_ml-2-0_cm/out/xml/t_smf_streaming.inc
eagle_ml-2-0_cm/out/xml/t_smf.xml
eagle_default/in/xml/include/contract_leg_alliases.inc
eagle_default/in/xml/include/contract_mapping.inc
eagle_default/in/xml/include/pay_leg_alliases.inc
eagle_default/in/xml/include/pay_mapping.inc
eagle_default/in/xml/include/receive_leg_alliases.inc
eagle_default/in/xml/include/receive_mapping.inc
eagle_default/in/xml/include/receive_mapping.inc
eagle_default/in/xml/include/futurecontractsmf_model.inc
eagle_default/in/xml/include/generic_smf_base_model.inc
SDP-43793: Warehouse Open Lot Interface was adjusted to support new element and new mapping
XSD Schema, inbound and outbound WarehouseOpenLot interfaces did not match Warehouseopenlot ontology resource.
XSD schema contained two elements netcashflwsNxtPmt with different types: xsd:decimal for GenericSMF type and xsd:date for WarehouseOpenLot type.
Every element should be unique in Ontology. To correct the issue new element netcashflwsNxtPmtDate2 was added to the XSD schema, and the mapping for the database field
HOLDINGDBO.LOT_LEVEL_POSITION.NETCASHFLWS_NXT_PMT was corrected for Warehouse Open Lot inbound and outbound interfaces.
New XPath: EagleML/warehouseTransaction/warehouseOpenLot/netcashflwsNxtPmt2
Files changed:
eagle_ml-2-0_cm/out/xml/t_warehouse_openlot_streaming.inc
eagle_ml-2-0_cm/out/xml/t_warehouse_openlot.xml
eagle_default/in/xml/xslt/wrh_egl_gen_interface3.xsl
SDP-43775: The Entity Bank Relationship Outbound Interface was updated to support streaming
The ENTITYBANKRELEXTRACT was improved to support streaming via MC and MC2.
Files changed:
eagle_ml-2-0_cm/out/tagvalue/extract_entity_bank_relationship.inc
eagle_ml-2-0_cm/out/xml/t_eagleml-2-0_streaming.rsf
eagle_ml-2-0_cm/out/xml/t_entity_bank_relationship_streaming.inc
eagle_ml-2-0_cm/w_config.inc
SDP-12469: The Stored Procedure for Custom Benchmark Inbound interface was added to core
The Stored Procedure for Custom Benchmark Inbound interface was included to the core package.
Files changed:
metadata/bind/eagleml_ent_custombenchmark.xml
eagle_default/in/xml/xml-ent_custombenchmark.xml
eagle_ml-2-0_cm/generate_sp_on_fly.inc
Production Bugs
SDP-43606: Corrected the issue with TSR content for PRF Stream tasks
Previously generated TSR did not contain all task details related to the PRF Stream.
The issue occurred due to an extra colon symbol in the generated eofwData variable and the SPLITSTRING function was working incorrectly. The issue was fixed.
File changed:
eagle_ml-2-0_cm/out/tagvalue/data_file_task.xml
SDP-43510: Corrected the issue with duplicate records in the file-based mode for the WAITEVENTS queue
On the cancel workflow, via the EJM MT/Stop All Instances option in the file-based mode for WAITEVENTS queue environment, the file lock was not set on start of WAITEVENTS.DAT handled via the eagle_ml-2-0_default_cm_execwkfl stream. The Cancel process did not lock the WAITEVENTS.DAT file which resulted in duplicated files in the queue. The logic was corrected to avoid possible duplication of records of files pending for execution in case of the file-based mode for WAITEVENTS queue.
Files changed:
eagle_ml-2-0_cm/cancel_global_event_wait.inc
SDP-43417: SPD Delta Trigger Log Extract was updated to support RTR Task Parameter HeaderOnlyTSR
The SPDDELTATRIGGERLOGEXTRACT was previously executed incorrectly if the RTR taskParameter HeaderOnlyTSR was used.
The EagleML extract was created with three fields only: objectType; objectId; and objectDescription. This is incorrect as only the TSR file should be created in this case. The SPDDELTATRIGGERLOGEXTRACT was updated to correctly support the task parameter HeaderOnlyTSR.
Files changed:
eagle_ml-2-0_cm/out/tagvalue/extract_spd_delta_trigger_log.xml
SDP-43280: SQL Query was corrected for the FINANCIALEVENTEXTRACT in DeltaBased mode
The DeltaBased mode for the FINANCIALEVENTEXTRACT extract did not work due to an inconsistency between the table alias in the From section and in the Where section within the generated SQL queries.
The table aliases for the extract were updated. The short table aliases were replaced with the corresponding table names to be in sync with the Where section.
Files changed:
eagle_ml-2-0_cm/out/tagvalue/extract_financial_event.xml
SDP-25228: Corrected EJM MC Consolidated TSR functionality for Windows MSSQL platform
The Task Reporter stream worked incorrectly on the Windows MSSQL platform when the CreateConsolidatedTSR parameter was set to Y and the stream parameter <failure_tolerance> on the loader stream was not set. The following error was raised:
Error executing DB Request. Status Code: -2 Channel Status Code: -5 Error Message: 'Error executing the request: Invalid length parameter passed to the LEFT or SUBSTRING function. '
The query for the consolidated TSR should not fail when the stream does not have the Failure Tolerance value specified. The issue was fixed.
eagle_ml-2-0_cm/out/xml/task_reporter.xml
eagle_ml-2-0_cm/out/xml/task_reporter_generate_task_unit.inc