Skip to Content

This example is referenced in my other post about flags to enforce the push-down of filters. Please review the other post to get a better understanding of the context for this example

 

The following example is an extension of the example described here. If you want to follow the example in detail you might want to read the other example first. Compared to the previous example an additional filter is defined on node “all”. The filter removes all ARTICLES with color “blue” and therefore the node is renamed to “noBlueStuff”. The definition of the filter is shown below

 

Filter on node “noBlueStuff” that removes all articles that are “blue”

 

Analogously, the calculated column is adapted so it reports now to be no blue stuff:

 

Calculated column in node “noBlueStuff” to indicate that record was fed in by node “noBlueStuff”

 

See the full model below

Current model with two filters

Default behavior (push-down is not enforced)

When the “Ignore Multiple Outputs For Filter” flag is not set node “noSocks” will filter out all “socks” while node “noBlueStuff” will filter out all ARTICLEs that are “blue”. Because nodes “noSocks” and “noBlueStuff” are combined in a UNION node “blue” ARTICLES will reach the output via “noSocks” while “socks” will reach the output via node “noBlueStuff”. See below for a screenshot of the output:

 

Output when filter push-down is not enforced: “socks” arrive via node “noBlueStuff” and “blue” articles arrive via node “noSocks”

 

Behavior with enforced push-down

When the “Ignore Multiple Outputs For Filter” flag is checked the filters will both be applied at node “salesOrders”. This means that neither “blue” ARTICLEs nor “socks” will be fed into later nodes. Therefore, the output will have no “socks” and no “blue” ARTICLES as shown in the screenshot below:

 

Output when filter push-down is enforced: neither “socks” nor “blue” articles are shown in the output as they are filtered before reaching the two consuming nodes.

 

As you can see in this situation different results are obtained depending on whether filter push-down is enforced by the flag or not. Therefore, a good understanding of the flags is requried.

 

 

This example is referenced in my other post about flags to enforce the push-down of filters. Please review the other post to get a better understanding of the context for this example

To report this post you need to login first.

Be the first to leave a comment

You must be Logged on to comment or reply to a post.

Leave a Reply