EagleML Release Notes - August 2020

Enhancements:

 

SDP-39631: Generic SMF Inbound and Outbound interfaces were updated to support additional fields from the SECURITYDBO schema

Provided support of additional elements from the GenericSMF XSD, Inbound and Outbound interfaces:

Table SECURITYDBO.SECURITY_MASTER:
genericSMF\ticker
genericSMF\altAssetIdAndType\instrumentId
genericSMF\reitFlag
genericSMF\ndfIndicator
genericSMF\MultipleLegSwapModel\corporateActionResetIndicator

Table SECURITYDBO.SECURITY_MASTER_DETAIL:
genericSMF\contractSize
genericSMF\internationalSukuk
genericSMF\domesticSukuk

Table SECURITYDBO.SECMASTER_DETAIL_EXT:
genericSMF\gicsSector
genericSMF\SMExtension\fundMaturityBandFocus
genericSMF\SMExtension\fundMarketCapFocus
genericSMF\SMExtension\fundRtgClassFocus
genericSMF\SMExtension\fundIndustryFocus
genericSMF\SMExtension\adrSponsorType
genericSMF\SMExtension\fundDistributor
genericSMF\SMExtension\indexFrequency
genericSMF\SMExtension\aifmdFlag
genericSMF\SMExtension\exchangeCode
genericSMF\SMExtension\exchangeMarketStatus
genericSMF\SMExtension\fundRedemptionFrequency
genericSMF\SMExtension\fundType
genericSMF\SMExtension\inflationLinkedFlag
genericSMF\SMExtension\msciCountryCode
genericSMF\SMExtension\quoteUnits

Files changed:
eagle_default/in/xml/xslt/smf_egl_gen_interface_template.xsl
eagle_default/in/xml/xslt/smf_egl_gen_interface_template_mssql.xsl
eagle_ml-2-0_cm/out/xml/t_smf_streaming.inc
eagle_ml-2-0_cm/out/xml/t_smf_streaming_eml.inc

SDP-39392: The Generic Entity Extract was updated to support the additional field xrefUpdateTimestamp

A new element, xrefUpdateTimestamp, was added as part of Entity Common Model for Generic Entity Extract only. The RTR parameter IncludeXrefUpdateTimestamp should be set to Y to extract a new field xrefUpdateTimestamp.
The global config parameter is also supported and can be enabled via w_config_custom.ini.

<COL TAG="W_INCLUDE_XREF_UPDATE_TIMESTAMP" EXPRESSION="'Y'"/><CODE>

Xpath:
EagleML/entityTransaction/genericEntity/xrefUpdateTimestamp
EagleML/entityTransaction/genericEntity/entityXrefs/entityXref/xrefUpdateTimestamp

Files changed:
eagle_ml-2-0_cm/extract_entity_fields.inc
eagle_ml-2-0_cm/out/xml/t_entity_common_ids_fields_streaming.inc

SDP-39373: SMF MI Stream performance was improved for Issuer Role Batch processing

A noticeable lag in processing was reported for the eagle_ml-2-0_default_in_xml_smf_mi stream processing files with more than 1000 records when the processingOptions is set to ISSUER_ROLE_GROUPING. The Issuer role batch grouping was optimized and the SMF MI Stream performance issue was corrected for the Issuer Role batch processing in case <processingOptions>ISSUER_ROLE_GROUPING</processingOptions>

Files changed:
eagle_default/in/xml/xslt/eagleml_smf_issuer_role.xsl

SDP-39257: Issuer role load in batch mode via SMF MI interface was updated

Previously Issuer Roles for PAY and RECEIVE legs were processed as a part of the batch for the CONTRACT leg of the corresponding multileg SMF.
The SMF MI Issuer Role inbound interface was adjusted to correctly load PAY and RECEIVE MultilegSMF in batch mode.

Files changed:
eagle_default/in/xml/xslt/eagleml_smf_issuer_role

SDP-39264: Generic Load Workflow was updated to adjust the processing order of the Schedule and Generic CA interfaces

The Generic Load workflow, eagle_wrf_generic_load, was updated to eliminate the sporadic errors occurring when the Schedules and Generic CA interfaces were processed concurrently.

Files changed:
eagle_ml-2-0_workflows/eagle_wrf_generic_load.wrf
eis/ejmwf/eagle_wrf_generic_load.ejmwf
eis/profiles/eagle_wrf_generic_load.ejmspf

SDP-39134: PRICINGREPORTEXTRACT was improved to return a unique match back to the portfolio valuation table based on hierarchy rules

The Price Hierarchy Table may have multiple instances where the same target source has multiple original sources which differ by the price type and the sequence number. The PRICINGREPORTEXTRACT was adjusted to return a unique match back to the portfolio valuation table supporting detailed hierarchy rules that use the same original pricing source within a target source , but with a different price type. The exchange code is also supported.

Files changed:
eagle_ml-2-0_cm/out/tagvalue/extract_pricing_report.inc

SDP-38993: Generic Issue Analytics Inbound and Outbound Interfaces were updated to support additional fields according to the core SP INS_UPD_SECURITY_ANALYTICS

The Generic Issue Analytics XSD load and extract rules were updated to support additional fields:
genericIssueAnalytic/tradeSetlmtDate
genericIssueAnalytic/futureCtdConversionFactor
genericIssueAnalytic/futureCtdCoupon
genericIssueAnalytic/futureCtdMaturity
genericIssueAnalytic/futureCtdSecurityId
genericIssueAnalytic/futureCtdSecurityIdType
genericIssueAnalytic/volumeAvg3m
genericIssueAnalytic/curMktCapShareClass
genericIssueAnalytic/dividendExDate
genericIssueAnalytic/dividendRate
genericIssueAnalytic/issuerMarketCapitalization
genericIssueAnalytic/issuerVotingShares
genericIssueAnalytic/totalReturn1wk
genericIssueAnalytic/totalReturn1mo
genericIssueAnalytic/eqyFreeFloatPct
genericIssueAnalytic/nextSinkPrice
genericIssueAnalytic/marketYield
genericIssueAnalytic/optionCost
genericIssueAnalytic/yieldCurveCode
genericIssueAnalytic/nomSpread
genericIssueAnalytic/analyticMtgModel/amortizationAverageMaturity
genericIssueAnalytic/analyticMtgModel/averageLoanAge
genericIssueAnalytic/analyticMtgModel/averageLoanSize
genericIssueAnalytic/analyticMtgModel/averageLoanToValueRatio
genericIssueAnalytic/analyticMtgModel/averageOriginalLoanSize
genericIssueAnalytic/analyticMtgModel/averageMaturityFromSettlementDt
genericIssueAnalytic/analyticMtgModel/fullDocLoanPercent
genericIssueAnalytic/analyticMtgModel/loanMargin
genericIssueAnalytic/analyticMtgModel/internalLoanToValueRatio
genericIssueAnalytic/analyticMtgModel/loanCount
genericIssueAnalytic/analyticMtgModel/loanPurposeEquityPercent
genericIssueAnalytic/analyticMtgModel/loanPurposePurchasePercent
genericIssueAnalytic/analyticMtgModel/loanPurposeRefinancePercent
genericIssueAnalytic/analyticMtgModel/marketLoanToValueRatio
genericIssueAnalytic/analyticMtgModel/ownerOccupiedPropertyPercent
genericIssueAnalytic/analyticMtgModel/prepayLockoutMonths
genericIssueAnalytic/analyticMtgModel/principalLockoutMonths
genericIssueAnalytic/analyticMtgModel/singleFamilyPropertyPercent

Files changed:
eagle_default/in/xml/xml-ref_genericissueanalytic.xml
eagle_ml-2-0_cm/out/tagvalue/extract_generic_issue_analytic.inc
eagle_ml-2-0_cm/out/xml/t_generic_issue_analytic_streaming.inc
metadata/bind/eagleml_ref_genericissueanalytic.xml

SDP-38562: Implemented Corporate Action Announcement to support Cash In Lieu via the Accounting CA interface

The insert, update and rebook functionality is now supported for CASHINLIEU Corporate Actions which relate to the original parent CA (e.g. Merger; Spinoff; Dividend Reinvestment, etc).
The Cash In Lieu CA record is based on another original, parent CA type. The following logic was added to the Corporate Action Accounting interface:
First step: The original CA record is resolved by Batch Event Id/tag701 + Initial Instance/tag1736 + Ex Date/tag65 + Cash Currency/tag3962
Second step: Load the CASHINLIEU data via the corresponding accounting panel, pan-cashinlieu.htm or pan-chgcashinlieu.htm.
The CASHINLIEU message should have the originalTransType set to the parent value; the linked client specific id; and the toAsset model populated.
Sample:
<originalTransType>SPLIT</originalTransType>
<originalCAId>CIL_SPLITL_1</originalCAId>
<toAsset>
<primaryAssetId>EQCSCS_CIL_SPLIT_0804_1</primaryAssetId>
    <primaryAssetType>INTERNAL</primaryAssetType>
</toAsset>

File changed:
eagle_default/in/xml/xml-ref_ca.xml

SDP-37784: Enabled load of Mandatory Corporate Action Exclusions

Introduced the ability to load Mandatory Corporate Action Exclusions via EagleML. The Mandatory CA Exclusion load process is resolved based upon the incoming data.

Files changed:
eagle_default/in/xml/xml-ref_mandatorycaexclusions.xml

SDP-37379: Generic Corporate Actions Extract was updated to support additional fields

The Generic Corporate Actions Extract, GENCORPACTIONSEXTRACT, was updated to include the extract of additional fields:
EagleML/referenceTransaction/genericCA/paydownTradedInterestFlag
EagleML/referenceTransaction/genericCA/paymentOverrideFactor

Files changed:
eagle_ml-2-0_cm/out/xml/t_generic_corporate_actions_streaming.inc

SDP-36856: Added Nuggetizer support to multiple extracts via Extract Service

The listed interfaces were updated to support Nuggetizer functionality via Extract Service:

RULEPRIMCOSTBASISEXTRACT
ENTITYLISTEXTRACT
RULEACCOUNTINGEXTRACT
RULEAMORTSCHDLEXTRACT
RULEBUWITHHOLDINGEXTRACT
RULEBASISPROCEXTRACT
RULECCSETTLEMENTEXTRACT
RULECONTRACTCASHEXTRACT
RULEEARNTHRUEXTRACT
WRHSOPENLOTEXTRACT_XMLDBAPI
WRHSPOSITIONEXTRACT_XMLDBAPI

Example of usage to split by 50 records:
<taskParameter>
<name>MicroBatchKeyRecordCount</name>
<dataType>S</dataType>
<value>50</value>
</taskParameter>

Files changed:
eagle_ml-2-0_cm/out/xml/extract_service_entity_composite.xml
eagle_ml-2-0_cm/out/xml/extract_service_entity_list.xml
eagle_ml-2-0_cm/out/xml/extract_service_rule_accounting.xml
eagle_ml-2-0_cm/out/xml/extract_service_rule_amort_schedule.xml
eagle_ml-2-0_cm/out/xml/extract_service_rule_backup_withholding.xml
eagle_ml-2-0_cm/out/xml/extract_service_rule_basis_processing.xml
eagle_ml-2-0_cm/out/xml/extract_service_rule_contract_cash.xml
eagle_ml-2-0_cm/out/xml/extract_service_rule_contractual_cash_settlement.xml
eagle_ml-2-0_cm/out/xml/extract_service_rule_earn_thru.xml
eagle_ml-2-0_cm/out/xml/extract_service_rule_primary_mixed_cost_basis.xml
eagle_ml-2-0_cm/out/xml/extract_service_warehouse_openlot_xmldbapi.xml
eagle_ml-2-0_cm/out/xml/extract_service_warehouse_position_xmldbapi.xml
eagle_ml-2-0_cm/out/xml/t_entity_composite_streaming.inc
eagle_ml-2-0_cm/out/xml/t_entity_list_streaming.inc
eagle_ml-2-0_cm/out/xml/t_rule_accounting_streaming.inc
eagle_ml-2-0_cm/out/xml/t_rule_amort_schedule_streaming.inc
eagle_ml-2-0_cm/out/xml/t_rule_backup_withholding_streaming.inc
eagle_ml-2-0_cm/out/xml/t_rule_basis_processing_streaming.inc
eagle_ml-2-0_cm/out/xml/t_rule_contract_cash_streaming.inc
eagle_ml-2-0_cm/out/xml/t_rule_contractual_cash_settlement_streaming.inc
eagle_ml-2-0_cm/out/xml/t_rule_earn_thru_streaming.inc
eagle_ml-2-0_cm/out/xml/t_rule_primary_mixed_cost_basis_streaming.inc
eagle_ml-2-0_cm/out/xml/t_warehouse_openlot_xmldbapi_streaming.inc
eagle_ml-2-0_cm/out/xml/t_warehouse_position_xmldbapi_streaming.inc

SDP-36847 MC2 EJM: LocalFileFolder functionality was extended and supported via MC2 EJM

Previously released MC EJM functionality is now supported via MC2 EJM. The RTR reader supports the download of the WorkflowData file from the SFTP/FTP server to the custom local directory.
The RTR parameter LocalFileFolder works with the Data parameter, which contains base64 encrypted data embedded in the control message.

Files changed:
workflow_listener.xml

Production Bugs:

 

SDP-39402: RTR message where businessTaskId contains colon(:) symbol is properly supported

The database error cannot update ("PACE_MASTERDBO"."ORCH_REQUEST_DEF"."PROC_STATUS") to NULL was raised when the RTR request contained a colon symbol (:) as part of the BusinessTaskId. The BusinessTaskId with colon symbol was not properly supported in case data was processed via eagle_ml-2-0_default_cm_control_message stream. The code was modified and the issue was resolved.

Files changed:
eagle_ml-2-0_cm/in/xml/eagleml_load.xml

SDP-39323: Delete logic was corrected for the Warehouse Position Load in Sub-Batch mode

Some records from the holdingdbo.position_detail table were being deleted in error. It was identified as being specific to a security holding both Long and Short positions for the day. When only one leg was updated, both legs were removed from the position_detail table and only one leg was reinserted based on the incoming data.

The delete logic was corrected in order to handle the long_short_ind correctly in Sub-batch mode. Now only records that require updates, based on the incoming file, are deleted and updated.
Additionally, not every field from the incoming file was loaded into the holdingdbo.position table during the WarehousePosition load in Sub-batch mode and the W_WRHS_IGNORE_POS_FLAG set to Y. The Insert statement was updated and the issue was corrected.

Files changed:
eagle_default/in/xml/include/xml-dbdirect_wrhs_delete_statement.inc

SDP-38937: Corrected mapping for Accounting Trade Cancel interface

The fields reportEndDate and reportBeginDate were not mapped correctly for the Accounting Trade Cancel. The rule was updated to properly support the corresponding aliases:
accountingTransaction/accountingTrade/reportBeginDate
accountingTransaction/accountingTrade/reportEndDate

Files changed:
eagle_default/in/include/trade_aliases.inc

SDP-36102: EntityToComposite Inbound interface - corrected mapping for tag1076

Previously the error message, Composite Type: You cannot link entity type PORT to another PORT, was raised due to incorrect logic for tag1076. The mapping was corrected and the issue was resolved.

Files changed:
eagle_default/in/xml/xml-ent_entitytocomposite.xml