Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

In this page:

Table of Contents

Anchor
Stream_logic
Stream_logic
Stream Logic

...

Info
This logic is applicable as of the EagleML November monthend 2015 release.
NOTE:  This enhancement is available only for the Generic SMF. Neither the MultiLeg SMF nor Underlying shell records are affected.

The Generic SMF allows you to load as many xref identifiers as you want with your Generic SMF record along with 15 industry-standard identifiers (such as cusip, ticker, isin, etc) 
These identifiers are loaded via the ADDSECMASTER stored procedure by a separate dynamic sql.
You can set them either as 15 standard Ids + 10 xref Ids (xId1..xId10) such as:

Code Block
languagexml
<xId1>
    <xId>TSTXREFID2_1</xId>
    <xIdType>TSTXID1</xIdType>
</xId1>

or as 15 standard Ids + unlimited xref Ids such as:

Code Block
languagexml
<xId>
    <xId>TSTXREFID1_1</xId>
    <xIdType>TSTXID1</xIdType>
</xId>

...

languagexml
titleAn example of Generic SMF utilizing this new logic (15 standard Ids + 20 xref Ids):

...

Panels, Binds, and Stored Procedures for SMF

The following table lists the panel, bind, and stored procedure used for multilingual implementations to set up security master files in a foreign language.


CSV/STAR Rule

Panel

Bind

Procedure

csv /or/ star-smf-ml.xml

eagle/star/pan-secml.htm

INSERT_UPDATE_SEC_DETAIL_ML

INSERT_UPDATE_SEC_DETAIL_ML

The following table lists the Processing Security Type (PST), panel, and bind for each security type processed by the SMF default message stream.


SMF Type

PST

Panel

Bind

SMF Long Term Debt

DBFLTP

DBIBFD

DBIBMU

DBIBPK

DBIVIV

DBMFDD

DBAMTL

DBIBTL

eagle/star/reference/pan-addsecmasterlongtermfixed.htm

ADDSECMASTER

SMF Short Term Debt

DBDCST

DBIBMA

DBIBRP

DBIBST

DBSTST

DBIBRR

eagle/star/reference/pan-addsecmastershortterminterest.htm

ADDSECMASTER

SMF Buy Sellback/ Sell Buyback

DBIBSB

eagle/star/reference/pan-addsecmasterbssb.htm

ADDSECMASTER

SMF Mortgage Backed Security

DBFBFB

DBFBIO

DBFBPO

DBTATA

DBFBAL

DBFBCC

eagle/star/reference/pan-addsecmastermbs.htm

ADDSECMASTER

SMF Equity

EQCSCS

EQCSPF

EQCSPK

EQEQMF

eagle/star/reference/pan-addsecmasterequity.htm

ADDSECMASTER

SMF Right and Warrant

EQRTXX

EQWRXX

eagle/star/reference/pan-addsecmasterrightwarrant.htm

ADDSECMASTER

Future

FTXXXX

eagle/star/reference/pan-addsecmasterfuture.htm

ADDSECMASTER

SMF Option

OPOPCR

OPOPSW

OPOPEQ

OPOPFB

OPOPCM

OPOPIX

eagle/star/reference/pan-addsecmasteroption.htm

ADDSECMASTER

SMF Credit Default Swap and Lock

SWCDCO

SWLOCK

eagle/star/reference/pan-swcdaddsecmaster.htm

ADDSECMASTER

SMF Multileg Swaps

SWxxxx

(excl. SWCDCOSWLOCK)

eagle/star/reference/pan-addsecmastermultilegswap.htm

ADDSECMASTER

SMF Forward Contract

FWXXXX

eagle/star/reference/pan-addsecmasterfwd.htm

ADDSECMASTER

Index

INXXXX

eagle/star/reference/pan-addsecmasterindex.htm

ADDSECMASTER

Synthetic

SYNTHETIC

eagle/star/reference/pan-addsecmastersynthetic.htm

ADDSECMASTER


Anchor
Xref_Identifiers_Enhancement_for_Generic
Xref_Identifiers_Enhancement_for_Generic
Xref Identifiers Enhancement for Generic SMF

Info
This logic is applicable as of the EagleML November monthend 2015 release.
NOTE:  This enhancement is available only for the Generic SMF. Neither the MultiLeg SMF nor Underlying shell records are affected.

The Generic SMF allows you to load as many xref identifiers as you want with your Generic SMF record along with 15 industry-standard identifiers (such as cusip, ticker, isin, etc) 
These identifiers are loaded via the ADDSECMASTER stored procedure by a separate dynamic sql.
You can set them either as 15 standard Ids + 10 xref Ids (xId1..xId10) such as:

Code Block
languagexml
<xId1>
    <xId>TSTXREFID2_1</xId>
    <xIdType>TSTXID1</xIdType>
</xId1>

or as 15 standard Ids + unlimited xref Ids such as:

Code Block
languagexml
<xId>
    <xId>TSTXREFID1_1</xId>
    <xIdType>TSTXID1</xIdType>
</xId>


Expand
titleAn example of Generic SMF utilizing this new logic (15 standard Ids + 20 xref Ids):


Code Block
languagexml
<EagleML xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="LoadReference" eaglemlVersion="2-0" actualBuild="1" xmlns="http://www.eagleinvsys.com/2011/EagleML-2-0">
    <referenceTransaction xmlns="http://www.eagleinvsys.com/2011/EagleML-2-0">
        <header>
       
<xId>
     <objectType>GenericSMF</objectType>
        </header>
      
<xId>TSTXREFID1_3</xId>
  <genericSMF>
            <sourceName>EAGLE PACE</sourceName>
    
<xIdType>TSTXID3</xIdType>
        <updateSource>MCADMIN</updateSource>
        
</xId>
    <effectiveDate>2014-09-30</effectiveDate>
            
<xId>
<primaryAssetId>CUSIP_ID1</primaryAssetId>
            <primaryAssetType>CUSIP</primaryAssetType>
       
<xId>TSTXREFID1_4</xId>
     <altAssetIdAndType>
                
<xIdType>TSTXID4<
<instrumentId>CINS_ID1</
xIdType>
instrumentId>
                
<
<instrumentIdType>CINS</
xId>
instrumentIdType>
            </altAssetIdAndType>
   
<xId>
         <issueName>TST 2010 1</issueName>
        
<xId>TSTXREFID1_5</xId>
    <ticker>TICKER_ID1</ticker>
            
<xIdType>TSTXID5</xIdType>
<cusip>CUSIP_ID1</cusip>
            <cusipPay>CUSIP_PAY_ID1</cusipPay>
   
</xId>
         <cusipReceive>CUSIP_RECEIVE_ID1</cusipReceive>
       
<xId>
     <isin>ISIN_ID1</isin>
            
<xId>TSTXREFID1_6</xId>
<sedol>SEDOL_ID1</sedol>
            <reuters>REUTERS_ID1</reuters>
        
<xIdType>TSTXID6</xIdType>
    <bloombergId>BBID_ID1</bloombergId>
            
</xId>
<sicovmId>SICOVM_ID1</sicovmId>
            <valorenId>VALOREN_ID1</valorenId>
    
<xId>
        <cedel>CEDEL_ID1</cedel>
            
<xId>TSTXREFID1
<internalId>INTERNAL_
7<
ID1</
xId>
internalId>
            <cinsId>CINS_ID1</cinsId>
        
<xIdType>TSTXID7</xIdType>
    <uniqueProductId>UPI_ID1</uniqueProductId>
            
</xId>
<uniqueSwapId>USI_ID1</uniqueSwapId>
            <xrefIdentifiers>
                <xId>
                    <xId>TSTXREFID1_
8<
1</xId>
                    
<xIdType>TSTXID8<
<xIdType>TSTXID1</xIdType>
                </xId>
                <xId>
                    <xId>TSTXREFID1_
9<
2</xId>
                    
<xIdType>TSTXID9<
<xIdType>TSTXID2</xIdType>
                </xId>
                <xId>
                    <xId>TSTXREFID1_
10<
3</xId>
                    
<xIdType>TSTXI10<
<xIdType>TSTXID3</xIdType>
                </xId>
                
<xId>
                    <xId>TSTXREFID1_
11<
4</xId>
                    
<xIdType>TSTXID11<
<xIdType>TSTXID4</xIdType>
                </xId>
                <xId>
                    <xId>TSTXREFID1_
12<
5</xId>
                    
<xIdType>TSTXID12<
<xIdType>TSTXID5</xIdType>
                </xId>
                <xId>
                    <xId>TSTXREFID1_
13<
6</xId>
                    
<xIdType>TSTXID13<
<xIdType>TSTXID6</xIdType>
                </xId>
                <xId>
                    <xId>TSTXREFID1_
14<
7</xId>
                    
<xIdType>TSTXID14<
<xIdType>TSTXID7</xIdType>
                </xId>
                <xId>
                    <xId>TSTXREFID1_
15<
8</xId>
                    
<xIdType>TSTXID15<
<xIdType>TSTXID8</xIdType>
                </xId>
                <xId>
                    <xId>TSTXREFID1_
16<
9</xId>
                    
<xIdType>TSTXID16<
<xIdType>TSTXID9</xIdType>
                </xId>
                <xId>
                    <xId>TSTXREFID1_
17<
10</xId>
                    
<xIdType>TSTXID17<
<xIdType>TSTXI10</xIdType>
                </xId>
                                <xId>
                    <xId>TSTXREFID1_
18<
11</xId>
                    
<xIdType>TSTXID18<
<xIdType>TSTXID11</xIdType>
                </xId>
                <xId>
                    <xId>TSTXREFID1_
19<
12</xId>
                    
<xIdType>TSTXID19<
<xIdType>TSTXID12</xIdType>
                </xId>
                <xId>
                    <xId>TSTXREFID1_
20<
13</xId>
                    
<xIdType>TSTXID20<
<xIdType>TSTXID13</xIdType>
                </xId>
            
</xrefIdentifiers>
    <xId>
          
<primaryExchangeCode>ALL</primaryExchangeCode>
          <xId>TSTXREFID1_14</xId>
  
<assetCurrency>USD</assetCurrency>
             
<investmentType>FI</investmentType>
     <xIdType>TSTXID14</xIdType>
       
<processingSecurityType>DBFBFB</processingSecurityType>
         </
genericSMF>
xId>
          
</referenceTransaction> </EagleML>
Code Block
languagesql
titleand a sample DB request to check if the load has been successful:
collapsetrue
select * from securitydbo.xreference
where security_alias in 
(select security_alias from securitydbo.security_master
where primary_asset_id ='CUSIP_IDT1')

You can switch to old logic by setting W_USEDYNAMIC_FOR_XREF= 'N' in the eagle_ml-2-0_cm_custom/w_config_custom.inc configuration file or by adding the EagleML/referenceTransaction/genericSMF/loadXrefOptions element to your incoming file (which has higher priority that global setting W_USEDYNAMIC_FOR_XREF) with 'LOAD_FIRST_10' value.

Expand
titleDetails on the Old logic (click to expand)

The old logic involves the stored procedure in the load process, thus limiting your choice to only 10 xref identifiers. These are the first 10 non-empty identifiers  as they are in the incoming message starting from industry standard identifiers such as cusip, ticker, isin, etc and then identifiers from xId1, xId2.  If you are using October monthend 2015 EagleML release or earlier, please remember that this limitation is applied.

Code Block
languagexml
titleSee an example of Generic SMF designed to use old logic (15 standard Ids + 10 xref Ids (xId1..xId10)
collapsetrue
<EagleML xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="LoadReference" eaglemlVersion="2-0" actualBuild="1" xmlns="http://www.eagleinvsys.com/2011/EagleML-2-0">
    <referenceTransaction xmlns="http://www.eagleinvsys.com/2011/EagleML-2-0">      <xId>
                    <xId>TSTXREFID1_15</xId>
                    <xIdType>TSTXID15</xIdType>
                </xId>
                <xId>
                    <xId>TSTXREFID1_16</xId>
                    <xIdType>TSTXID16</xIdType>
                </xId>
                <xId>
                    <xId>TSTXREFID1_17</xId>
                    <xIdType>TSTXID17</xIdType>
                </xId>
        <header>        <xId>
    <objectType>GenericSMF</objectType>         </header>       <xId>TSTXREFID1_18</xId>
 <genericSMF>             <sourceName>EAGLE PACE</sourceName>     <xIdType>TSTXID18</xIdType>
       <updateSource>MCADMIN</updateSource>         </xId>
   <effectiveDate>2014-09-30</effectiveDate>             <primaryAssetId>CUSIP_ID2</primaryAssetId>
<xId>
           <primaryAssetType>CUSIP</primaryAssetType>         <xId>TSTXREFID1_19</xId>
   <altAssetIdAndType>                 <instrumentId>CINS_ID2<<xIdType>TSTXID19</instrumentId>xIdType>
                <instrumentIdType>CINS<</instrumentIdType>xId>
             </altAssetIdAndType>   <xId>
         <issueName>TST 2010 1</issueName>         <xId>TSTXREFID1_20</xId>
   <ticker>TICKER_ID2</ticker>             <cusip>CUSIP_ID2</cusip>    <xIdType>TSTXID20</xIdType>
        <cusipPay>CUSIP_PAY_ID2</cusipPay>             <cusipReceive>CUSIP_RECEIVE_ID2</cusipReceive></xId>
            <isin>ISIN_ID2<</isin>xrefIdentifiers>
            <sedol>SEDOL_ID2<<primaryExchangeCode>ALL</sedol>primaryExchangeCode>
            <reuters>REUTERS_ID2<<assetCurrency>USD</reuters>assetCurrency>
            <bloombergId>BBID_ID2<<investmentType>FI</bloombergId>investmentType>
            <sicovmId>SICOVM_ID2<<processingSecurityType>DBFBFB</sicovmId>processingSecurityType>
            <valorenId>VALOREN_ID2</valorenId></genericSMF>
            <cedel>CEDEL_ID2</cedel>
            <internalId>INTERNAL_ID2</internalId>
            <cinsId>CINS_ID2</cinsId>
            <uniqueProductId>UPI_ID2</uniqueProductId>
            <uniqueSwapId>USI_ID2</uniqueSwapId>
            <xrefIdentifiers>
                <xId1>
                    <xId>TSTXREFID2_1</xId>
                    <xIdType>TSTXID1</xIdType>
                </xId1>
                <xId2>
     </referenceTransaction>
</EagleML>



Expand
titleand a sample DB request to check if the load has been successful:


Code Block
languagesql
collapsetrue
select * from securitydbo.xreference
where security_alias in 
(select security_alias from securitydbo.security_master
where primary_asset_id ='CUSIP_IDT1')


You can switch to old logic by setting W_USEDYNAMIC_FOR_XREF= 'N' in the eagle_ml-2-0_cm_custom/w_config_custom.inc configuration file or by adding the EagleML/referenceTransaction/genericSMF/loadXrefOptions element to your incoming file (which has higher priority that global setting W_USEDYNAMIC_FOR_XREF) with 'LOAD_FIRST_10' value.

Expand
titleDetails on the Old logic (click to expand)

The old logic involves the stored procedure in the load process, thus limiting your choice to only 10 xref identifiers. These are the first 10 non-empty identifiers  as they are in the incoming message starting from industry standard identifiers such as cusip, ticker, isin, etc and then identifiers from xId1, xId2.  If you are using October monthend 2015 EagleML release or earlier, please remember that this limitation is applied.

Code Block
languagexml
titleSee an example of Generic SMF designed to use old logic (15 standard Ids + 10 xref Ids (xId1..xId10)
collapsetrue
<EagleML xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="LoadReference" eaglemlVersion="2-0" actualBuild="1" xmlns="http://www.eagleinvsys.com/2011/EagleML-2-0">
    <referenceTransaction xmlns="http://www.eagleinvsys.com/2011/EagleML-2-0">
        <header>
              <xId>TSTXREFID2_2</xId><objectType>GenericSMF</objectType>
        </header>
        <genericSMF>
  <xIdType>TSTXID2</xIdType>          <sourceName>EAGLE PACE</sourceName>
     </xId2>       <updateSource>MCADMIN</updateSource>
         <xId3>   <effectiveDate>2014-09-30</effectiveDate>
            <primaryAssetId>CUSIP_ID2</primaryAssetId>
    <xId>TSTXREFID2_3</xId>        <primaryAssetType>CUSIP</primaryAssetType>
            <xIdType>TSTXID3</xIdType><altAssetIdAndType>
                <<instrumentId>CINS_ID2</xId3>instrumentId>
                <xId4><instrumentIdType>CINS</instrumentIdType>
            </altAssetIdAndType>
       <xId>TSTXREFID2_4</xId>     <issueName>TST  2010  1</issueName>
           <xIdType>TSTXID4</xIdType> <ticker>TICKER_ID2</ticker>
            <cusip>CUSIP_ID2</cusip>
   </xId4>         <cusipPay>CUSIP_PAY_ID2</cusipPay>
       <xId5>     <cusipReceive>CUSIP_RECEIVE_ID2</cusipReceive>
               <xId>TSTXREFID2_5</xId><isin>ISIN_ID2</isin>
            <sedol>SEDOL_ID2</sedol>
        <xIdType>TSTXID5</xIdType>    <reuters>REUTERS_ID2</reuters>
            <<bloombergId>BBID_ID2</xId5>bloombergId>
            <sicovmId>SICOVM_ID2</sicovmId>
   <xId6>         <valorenId>VALOREN_ID2</valorenId>
           <xId>TSTXREFID2 <cedel>CEDEL_6</xId>ID2</cedel>
            <internalId>INTERNAL_ID2</internalId>
            <xIdType>TSTXID6</xIdType><cinsId>CINS_ID2</cinsId>
            <uniqueProductId>UPI_ID2</uniqueProductId>
           </xId6> <uniqueSwapId>USI_ID2</uniqueSwapId>
            <xrefIdentifiers>
                <xId7><xId1>
                    <xId>TSTXREFID2_7<1</xId>
                    <xIdType>TSTXID7<<xIdType>TSTXID1</xIdType>
                </xId7>xId1>
                <xId8><xId2>
                    <xId>TSTXREFID2_8<2</xId>
                    <xIdType>TSTXID8<<xIdType>TSTXID2</xIdType>
                </xId8>xId2>
                <xId9><xId3>
                    <xId>TSTXREFID2_9<3</xId>
                    <xIdType>TSTXID9<<xIdType>TSTXID3</xIdType>
                </xId9>xId3>
                <xId10><xId4>
                    <xId>TSTXREFID2_10<4</xId>
                    <xIdType>TSTXI10<<xIdType>TSTXID4</xIdType>
                </xId10>xId4>
                <xId5>
       </xrefIdentifiers>             <primaryExchangeCode>ALL</primaryExchangeCode><xId>TSTXREFID2_5</xId>
                    <assetCurrency>USD</assetCurrency><xIdType>TSTXID5</xIdType>
                <investmentType>FI</investmentType></xId5>
                <processingSecurityType>DBFBFB</processingSecurityType><xId6>
        </genericSMF>     </referenceTransaction>
</EagleML>       <xId>TSTXREFID2_6</xId>
                    <xIdType>TSTXID6</xIdType>
                </xId6>
                <xId7>
                    <xId>TSTXREFID2_7</xId>
                    <xIdType>TSTXID7</xIdType>
                </xId7>
                <xId8>
                    <xId>TSTXREFID2_8</xId>
                    <xIdType>TSTXID8</xIdType>
                </xId8>
                <xId9>
                    <xId>TSTXREFID2_9</xId>
                    <xIdType>TSTXID9</xIdType>
                </xId9>
                <xId10>
                    <xId>TSTXREFID2_10</xId>
                    <xIdType>TSTXI10</xIdType>
                </xId10>
            </xrefIdentifiers>
            <primaryExchangeCode>ALL</primaryExchangeCode>
            <assetCurrency>USD</assetCurrency>
            <investmentType>FI</investmentType>
            <processingSecurityType>DBFBFB</processingSecurityType>
        </genericSMF>
    </referenceTransaction>
</EagleML>


Anchor
issueTaxType
issueTaxType
issueTaxType Processing

In case issueTaxType (SECURITYDBO.SECURITY_MASTER_DETAIL.ISSUE_TAX_TYPE) is not passed in incoming SMF message or passed value is not resolved in DB for SMF where securityProcressingType is one of: DBIBMU, DBFBIO, DBFBAL , DBFBCC , DBFBFB
– issueTaxType is set to ‘T’.

tag2301 Processing

If Processing Type (tag11) = OP then Synthetic Security Type (tag2301) is set to SYNCASHOPT.
For other values of Processing Type (tag11) Synthetic Security Type (tag2301) is set to SYNCASHFUT.

Anchor
NG_logic
NG_logic
NG Logic

...