Custom Filters

You can create custom filters for your extract either with CustomWhere parameter or with QueryProfileName parameter.

Using CustomWhere

We do not recommend to use CustomWhere, this functionality may induce security vulnerability, so according to the additional security policy introduced in 2020 its use should be limited as much as possible

You cannot use OR operator in the expression for CustomWhere parameter.

The use of CustomWhere is considered custom code  
If not used properly, the use of CustomWhere could significantly degrade performance of your extract

CustomWhere CM parameter allows to insert additional code into the WHERE part of the SQL query of an extract. All EagleML objects support this option.

It should be formatted as follows:

<taskParameter>
    <name>CustomWhere</name>
    <dataType>S</dataType>
    <value>[your_specific_where_expression]</value>
</taskParameter>

For example:

<taskParameter>
    <name>CustomWhere</name>
    <dataType>S</dataType>
    <value>securitydbo.security_master.security_alias ='15' and rownum < 10</value>
</taskParameter>

Example of a CM using the CustomWhere option

<EagleML xmlns="http://www.eagleinvsys.com/2011/EagleML-2-0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="RunTaskRequest" eaglemlVersion="2-0" xsi:schemaLocation="http://www.eagleinvsys.com/2011/EagleML-2-0 eagleml-main-2-0.xsd" eaglemlType="RunTaskRequest">
    <header>
        <messageId>EXTRACT_TEST</messageId>
        <sentBy>http://www.client.com</sentBy>
        <sendTo>http://www.eagleinvsys.com/eagle_ml-2-0_default_cm_control_message</sendTo>
        <replyTo>http://www.client.com/Eagle Control Messages</replyTo>
        <creationTimestamp>2012-08-02T22:13:32.272-05:00</creationTimestamp>
    </header>
    <taskIdentifier>
        <correlationId correlationIdScheme="correlationIdScheme">EXTRACT_TEST_031</correlationId>
        <businessTaskId correlationIdScheme="businessTaskIdScheme">EXTRACT_TEST</businessTaskId>
    </taskIdentifier>
    <taskTypeEnum>NEW</taskTypeEnum>
    <taskParameters>
        <taskParameter>
            <name>ActionType</name>
            <dataType>S</dataType>
            <value>EXTRACT</value>
        </taskParameter>
        <taskParameter>
            <name>StreamName</name>
            <dataType>S</dataType>
            <value>eagle_ml-2-0_default_out_q</value>
        </taskParameter>
        <taskParameter>
            <name>FeedType</name>
            <dataType>S</dataType>
            <value>SMFEXTRACT</value>
        </taskParameter>
        <taskParameter>
            <name>CustomWhere</name>
            <dataType>S</dataType>
            <value>securitydbo.security_master.security_alias = '15' and rownum < 10</value>
        </taskParameter>
    </taskParameters>
</EagleML>

Using QueryProfileName

For example:

<taskParameter>
       <name>QueryProfileName</name>
       <dataType>S</dataType>
       <value>testProfileName</value>
</taskParameter>

To use this parameter you should have a profile already configured on a certain environment.

For more information about Element Reduction profiles, refer to the Manage Element Reduction in Extracts via XPanels page in the IWS wiki.