EagleML Release Notes - June 28th 2022
Enhancements
SDP-62760 Accounting Trade was enhanced for FX Forward objects
Mapping for forwardSellSideInternal and forwardBuySideInternal tags was missing when loading the Accounting Trade object. The Accounting Trade FX Interface was enhanced to support these elements.
Files changed:
eagle_default/in/include/csv-fxfwd_columns.inc
SDP-62436 Support Sector and Sector_detail SMF fields for extract
The Generic SMF outbound interface was enhanced to support all fields from the SECTOR and SECTOR_DETAIL tables for Extract.
Files changed:
eagle_ml-2-0_cm/out/tagvalue/extract_smf.inc
eagle_ml-2-0_cm/out/xml/t_smf.xml
eagle_ml-2-0_cm/out/xml/t_smf_streaming.inc
eagle_ml-2-0_cm/out/xml/t_smf_streaming_eml.inc
SDP-62000 Monitoring stream was enhanced to support dynamic data values in SPF profiles.
The monitoring stream was not able to support dynamic data values that could be set in spf profiles.
Evaluation expression logic was added in order to provide support for dynamic values that can be used as a data mask in the spf file profiles.
Files changed:
eagle_ml-2-0_cm/out/xml/monitoring.xml
eagle_ml-2-0_cm/out/xml/read_profiles.inc
eagle_ml-2-0_cm/out/xml/read_task_info.incÂ
SDP-62451 Position balances are clearing when batch of open lots or positions fails
During batch mode we delete all records repeated to positions from all tables except from the position table. A roll up process then updates the position table. However, if a batch load happens to fail, then the roll up process will not initiate and position balances will not be recalculated. A fix has been implemented so that when batch load of open lots or positions fails, position balances will be zeroed out.
File changed:
eagle_default/in/xml/include/xml-dbdirect_wrhs_delete_statement.inc
SDP-46912 EntityStatus inbound interface for Entity Deactivate Process
Ability to deactivate an entity by the Entity Status inbound interface has been added.
Sample Message:
<EagleML eaglemlVersion="2-0" eaglemlType="ReferenceTransactionMessage" xsi:schemaLocation="
http://www.eagleinvsys.com/2011/EagleML-2-0{{ eagleml-main-2-0.xsd" xsi:type="EntityTransactionMessage" xmlns="}}http://www.eagleinvsys.com/2011/EagleML-2-0%22{{ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">}}<header>
<messageId>AddEntity</messageId>
<sentBy>user</sentBy>
<sendTo><
http://www.eagleinvsys.com/eagle_ml-2-0_default_cm_control_message%3C/sendTo%3E%3E{{ }}</header>
<taskIdentifier>
<correlationId>EagleML_ADD_Entity_{GUID}</correlationId>
<businessTaskId>EagleML_ADD_Entity</businessTaskId>
</taskIdentifier>
<entityTransaction>
<header>
<objectType>EntityStatus</objectType>
</header>
<entityStatus>
<objectType>EntityStatus</objectType>
<objectId>EntityStatus</objectId>
<objectDescription>EntityStatus</objectDescription>
<updateSource>MCADMIN</updateSource>
<entityId>ENTITY_ID</entityId>
<entityName>ENTITY_NAME</entityName>
<status>N</status>
<effectiveDate>2021-01-12</effectiveDate>
<excludeFromCompositesSwitch>Y</excludeFromCompositesSwitch>
</entityStatus>
</entityTransaction>
</EagleML>
Set the status
to 'N' to deactivate the entity and set the excludeFromCompositesSwitch
to 'Y' to remove the entity from any composites.
This process only deactivates entities. Once an entity is deactivated, a separate workflow is required if the entity needs to be reactivated.
Files changed:
eagle_default/in/xml/xml-ent_entitystatus.xml
eagle_default/in/xml/xml-ent_objects.rsf
SDP-63378 IssuePrice, ExchangePrice and IssuePcPrice inbound interfaces were enhanced to support SWAP resolution by xreferences only
SWAP resolution for Prices has specific logic based on Processing Security Type and only one leg could be priced. The logic was updated to support SWAP resolution based on xreferences only.
The logic is an opt-in feature and only available when the processing option PRICE_RESOLVE_SW_BY_XREF is set in the incoming file or as a global parameter when W_PRICE_RESOLVE_SW_BY_XREF is applied to the w_config_custom.inc.
Usage:
<header>
<objectType>IssuePrice</objectType>
<processingOptions>PRICE_RESOLVE_SW_BY_XREF</processingOptions>
</header>
or
<COL TAG="W_PRICE_RESOLVE_SW_BY_XREF" EXPRESSION= "'Y'"/>
Files changed:
eagle_default/in/xml/xml-ref_issueprice.xml
eagle_default/in/xml/include/xml-ref_security_pricing_common.inc
SDP-62988 WRHSTRADEEXTRACT - Updated signage logic for list of fields
Signage Keys and Conditions were adjusted for the following fields.
NET_CASH - EagleML/WarehouseTransaction/warehouseTrade/netAmountLocal
TRADE_BASE_AMOUNT - EagleML/WarehouseTransaction/warehouseTrade/netAmountBase
COST_BASE - EagleML/WarehouseTransaction/warehouseTrade/costBase
COST_LOCAL - EagleML/WarehouseTransaction/warehouseTrade/costLocal
ORIG_ACQ_COST_BASE - EagleML/WarehouseTransaction/warehouseTrade/originalAcquisitionCostBase
ORIG_ACQ_COST_LOCAL - EagleML/WarehouseTransaction/warehouseTrade/originalAcquisitionCostLocal
PAR_OR_SHARES - EagleML/WarehouseTransaction/warehouseTrade/originalQuantity
BOOK_VALUE - EagleML/WarehouseTransaction/warehouseTrade/bookValue
BOOK_VALUE_LOCAL - EagleML/WarehouseTransaction/warehouseTrade/bookValueLocal
PRINCIPAL - EagleML/WarehouseTransaction/warehouseTrade/principal
PRINCIPAL_BASE - EagleML/WarehouseTransaction/warehouseTrade/principalB
DIRTY_PRINCIPAL - EagleML/WarehouseTransaction/warehouseTrade/dirtyPrincipalLocal
DIRTY_PRINCIPAL_BASE - EagleML/WarehouseTransaction/warehouseTrade/dirtyPrincipalBase
SETTLEMENT_AMOUNT - EagleML/WarehouseTransaction/warehouseTrade/settlementAmount
SETTLE_AMOUNT_BASE - EagleML/WarehouseTransaction/warehouseTrade/settleAmountBase
TRADE_AMOUNT - EagleML/WarehouseTransaction/warehouseTrade/tradeAmount
NETSETTLEAMT - EagleML/WarehouseTransaction/warehouseTrade/netsettleamt
CASH_TYPE - EagleML/WarehouseTransaction/warehouseTrade/cashEventType
Affected Record Types, MT Types and Trans Codes:
280MTOPENPAYUPCANCEL,
180MTOPENPAYUP,
150MTOPENSHORTSELL,
250MTOPENSHORTSELLCANCEL
Files changed:
eagle_ml-2-0_cm/out/tagvalue/extract_wrhs_trade_signage_logic.inc
SDP-61732 Rebook of Voluntary Election works without errors for type CALL
Voluntary Election record corresponds to the correct Corporate Action. Rebook of Voluntary Election works without errors once the corporate action is filtered properly.
File changed:
eagle_default/in/xml/xml-ref_voluntarycaelections.xml
SDP-59505 Added logic to support extension table of the core EDS resource and existing database table
The framework supports both database providers - Oracle and Snowflake. Added functionality supports extension off core EDS resource. The backend/Service changes were implemented at this time and EDS Tool UI change is in progress. The extension table will be created based on the mapping  defined via EDS Tool UI.
Files changed:
src/eagleinvsys/rdf_metadata/rdf_inflow.py
src/eagleinvsys/rdf_metadata/rdf_ontology_generator.py
SDP-62078 Extension of EDS warehouseopenlot resource
Implemented a framework and backend support for load and extract to extension table via EDS warehouseopenlot resource.
SDP-60280 Auto-discovery of the schema drift at the runtime
The auto-discovery of the schema drift at the runtime functionality was implemented for for non-eagle resources and Snowflake database provider. The Extension or custom resource is created automatically. If schemadriftmode is set to ignore mode by default, then all unknown elements are therefore ignored.
For example, if schemadriftmode set to auto_approve mode, then the registered schema for resource will be compared with actual schema in the data file:
In case of any deviation found in schema, the data load will be interrupted and extension will be created for resource which will contain all unmatched columns
In case of unknown resource_name, new custom resource will be created
If schemadriftmode set to Validate mode, then the registered schema for resource will be compared with actual schema in the data file.
In case of any deviation found in schema, the data load will be interrupted and the exception will be raised with corresponding details, for example non-matching columns
Production Bugs
SDP-31864 Mapping was amended for the IN_NOTIONAL_LOCAL_UNREALIZED_GL element
eagle_default_in_csv_warehouse was not mapping the element IN_NOTIONAL_LOCAL_UNREALIZED_GL at all when it was being used. It was resolved by allowing both in_notional_loc_unrealized_gl and IN_NOTIONAL_LOCAL_UNREALIZED_GL elements to be passed by the wrhs_position_mapping_csv2xmldbapi.inc file.
File changed:
eagle_default/out/csv/wrhs_position_mapping_csv2xmldbapi.inc
SDP-62971 Sector load step was resolved for underlying SMF
Sector fields were failing during the load step for underlying SMF that don’t exist in the database. Xslt files for EagleDBMLRequest generation were fixed to make correct EagleDBMLRequest for the underlying SMF.
Files changed:
eagle_default/in/xml/xslt/smf_sector_egl_gen_interface_template.xsl
eagle_default/in/xml/xslt/smf_sector_egl_gen_interface_template_mssql.xsl
SDP-62890 WRHSPERFORMANCEEXTRACT functionality was corrected for effectivedaterule and updatedate parameters
When a Date Rule is passed in the effectivedaterule parameter no data was being extracted due to some extracts includes removing data from temp tables. Ordering of the includes was therefore adjusted. Also, when the updatedate parameter is passed using a yyyy-mm-dd format, the final request was generated incorrectly. The logic for date parameters was updated in order to fix all issues related to date filters.
File changed:
eagle_ml-2-0_cm/out/tagvalue/extract_warehouse_performance.inc
SDP-62533 Underlying logic in GenericSMF interface was updated to support Credit default SWAP
The Underlying security was not being created in the SECURITYDBO.UNDERLYING_SECURITY table for Credit Default Swaps (SWCDCX). This was due to the fact that SWCDCX swaps do not resolve based on the SWAPS.PAY_RECEIVE_IND field stored in the database because this field is NULL due to their structure.
The resolution process for the main security was therefore enhanced to support SWCDCX and resolve the security correctly to then properly load the underlying security data.
File changed:
eagle_default/in/xml/include/underlying_link_ins_upd.inc