Versions Compared

Key

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

Instance to Instance (I2I) EagleML is an EJM feature that provides data interaction between several Eagle environments.

Info
titleNote
I2I was introduced in the 2015 September monthend EagleML/EJM Release. You need this release or higher in order to leverage I2I functionality.

The following are some helpful FAQs, click a question to see the answer.

General Questions

Q: What are the default filters and what are their default values? (for example, effectivedate defaults to current day, etc.)
A: There is only one default filter - maxrows (count of max returned records in the extract file) - the default value of this parameter is 100.000 records (refer to http://eagle.helpdocsonline.com/available-filters$Common%20Filter ).

...

Q: What action is the datetime stamp associated with? In other words, if two users manually kick off a delta extract, is the cutoff a global cutoff or is it associated with the last time that particular user created an extract? Is the same true per server, engine, or service account?
A: The datetime stamp is linked to the I2I workflow (specifically, to the I2I Process UID), and to the UID of the environment (the same as the Spoke ID). It is not related to any users. Thus, if two users run the same I2I workflow at the same time, it will be the same situation as if one user runs the same I2I workflow twice at the same time.
For example, here is the I2I Process UID:

...

Q: Is the last run datetime captured on the record level? For example, if an SMF delta extract is done with a filter for one source at 1:00pm and then another SMF delta extract is done with a filter for another source at 2:00pm, will the extract properly pull data prior to 1:00pm for the second source?
A: No, last run datetime is not on the record level. It is related to the I2I workflow Process UID and to the environment in general. In this example, the last run datetime will be updated twice: after the 1:00pm run and after 2:00pm run.

...

Q: How can we find out what version of I2I we are running?
A: I2I is part of EagleML, we don't have a separate version for I2I. EagleML/I2I have the same version.
To determine which EagleML version you have in your environment, open Message Center Editor and open the following file: /eagle_ml-2-0_cm/w_config.inc.
In the top line of this file, you will find information about the installed EagleML version.
For example:
<!-BR-EAGLEML_PRD_20151007.1-> 
In this example, you see BR-EAGLEML_PRD_20151007.1. This indicates that this environment contains the September 2015 monthend release. The date for the monthend release is typically the first Wednesday after the first Tuesday of the following month. For example, September 2015 EagleML monthend package was released on October 7th 2015. Refer to the related wiki page: http://eagle.helpdocsonline.com/checking-your-eagleml-version.
You can find detailed information about each EagleML release in the EagleML Release Notes section.

...

Filter Questions

Q: Security Master File (SMF) Filters Questions As shown in the wiki for SMF filters, the Include form is the default. If I don't specify any filters, should I assume that no filters will be applied and thus all security types will be extracted, all process security type will be extracted, etc.
A: Yes, if you don't specify any filters for SMF, then all SMF will be extracted. There are no default filters, with one exception: maxrows (count of max returned records in the extract file). The default value of this parameter is 100,000 records (refer to Available Filters wiki page).
But, on the level of I2I processes, there is also the EntityList filter which can be considered default if it is set in the spoke map. The spoke can also use one of the available Sources from the Sources List to filter SMFs - this is defined in the spoke map.

...

  • if parameter "ProcessCenter" is used (entityselectiontype=ProcessCenter, entityselectionvalue=[Process Center filter value]), then the value of "effectivedate" filter will be found from the RULESDBO.PROCESS_CENTER table, for example:
    select to_char(pc.curr_dt,'yyyy-mm-dd') EFFECTIVE_DATEfrom RULESDBO.PROCESS_CENTER pcwhere pc.process_center = [Process Center filter value]
    To use two Entity filters, the following parameters are available:
    entityselectiontype / entityselectionvalue
    entityselectiontype2 / entityselectionvalue2
    If we want to use ProcessCenter and EntityList filters together, we can use following structure:
           <taskParameter>             <name>entityselectiontype</name>             <dataType>S</dataType>             <value>EntityList</value>       </taskParameter>       <taskParameter>             <name>entityselectionvalue</name>             <dataType>S</dataType>             <value>SCPAREN3</value>       </taskParameter>       <taskParameter>             <name>entityselectiontype2</name>             <dataType>S</dataType>             <value>ProcessCenter</value>       </taskParameter>       <taskParameter>             <name>entityselectionvalue2</name>             <dataType>S</dataType>             <value>US</value>       </taskParameter>
    Order of filters is not important. "entityselectiontype2" parameter can be used for both, ProcessCenter or EntityList as follows:
  • If the value of ProcessCenter parameter is incorrect, then the value of "effectivedate" filter will be set as null.
  • If ProcessCenter parameter is not used and "heldeffectivedate" filter value exists in RTR, then "heldeffectivedate" filter value will be used for filtering by EFFECTIVE_DATE field, for example:
    HOLDINGDBO.POSITION.EFFECTIVE_DATE = to_date([held effective date filter value],'yyyy-mm-dd') - for positions
    CASHDBO.CASH_ACTIVITY.ACCOUNTING_DATE >= to_date('2015-11-25','yyyy-mm-dd') - for cash activity
  • If ProcessCenter parameter is not used and "heldeffectivedate" filter value does not exist in RTR, then the value of "effectivedate" filter will be found as MAX of EFFECTIVE_DATE in the POSITION table. Conditions used in this query are: Date filter for UpdateDate, HeldPositionSource, and Entitylist.
    3: If "effectivedate" filter is not set, then filtering by EFFECITVE_DATE field will not be used, there is no default filter value. In general, "effectivedate" filter is not used in Held Mode.
    4: Need to use "heldeffectivedate" filter and do not use ProcessCenter parameter in RTR.
    5: For Date filters without Held Mode: "fromeffectivedate" and "toeffectivedate" filters work as usual: for SMF extraction from composite table - aren't available, for SMF extraction from history table - are available, for example:
    SECMASTER_HISTORY.EFFECTIVE_DATE >= TO_DATE([from effective date filter value], 'YYYY-MM-DD')
    SECMASTER_HISTORY.EFFECTIVE_DATE <= TO_DATE([to effective date filter value], 'YYYY-MM-DD')
    For "Date filters with Held Mode": "fromeffectivedate" and "toeffectivedate" filters aren't available.
    6: "effectivedate", "fromeffectivedate" and "toeffectivedate" filters are available only for SMF history extract and not available in Held Mode as follows:
    -If we set only "effectivedate" filter value, then following SQL restriction will be added:
    SECMASTER_HISTORY.EFFECTIVE_DATE = TO_DATE([effective date filter value], 'YYYY-MM-DD')
    -If we set only "fromeffectivedate" filter value, then following SQL restriction will be added:
    SECMASTER_HISTORY.EFFECTIVE_DATE >= TO_DATE([from effective date filter value], 'YYYY-MM-DD')
    -If we set only "toeffectivedate" filter value, then following SQL restriction will be added:
    SECMASTER_HISTORY.EFFECTIVE_DATE <= TO_DATE([to effective date filter value], 'YYYY-MM-DD')
    -If we set "fromeffectivedate" and "toeffectivedate" filter values, then  following SQL restriction will be added:
    SECMASTER_HISTORY.EFFECTIVE_DATE >= TO_DATE([from effective date filter value], 'YYYY-MM-DD') AND SECMASTER_HISTORY.EFFECTIVE_DATE <= TO_DATE([to effective date filter value], 'YYYY-MM-DD')

    Planned Enhancements and Resolved Issues

    Q: If EffectiveDate is set to the current day, a full extract is returned. If there are no holdings as of a specific date, will we see an error?
    A: This was a problem in the EagleML code, we have fixed it. It works correctly if we use the HeldEffectiveDate parameter instead of EffectiveDate in the Date filter. EffectiveDate in the Date filter is not used in the Held mode. However, current version of I2I doesn't support error descriptions in the final TSR, it shows only Status (SUCCESS, ERROR, NO_DATA). We are working on it right now and in one of the following EagleML updates, we will add this new feature.
    Q: If Sourcename is set to a fake source (for example, FAKESOURCE) a full file is returned. Will we see an error? For reference, P2P gives the following error: "Level:1, SQL Call Failed. Check Stored Procedure or SQL Statement that caused the error[SERVERERROR] ORA-20002: Invalid Position Source FAKESRC".
    A: Yes, this was a problem and we have fixed it.
    Q: Is it possible to show errors from the Hub in the Spoke Monitoring Tool? For example, if an entity ID does not exist.
    A: Yes, it is possible. We are working on it right now. In one of the following EagleML and EJM Monitoring Tool updates, we will add this new feature.