Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Qlik and ServiceNow Partner to Bring Trusted Enterprise Context into AI-Powered Workflows. Learn More!
cancel
Showing results for 
Search instead for 
Did you mean: 
JacobTews
Creator
Creator

Mapping filters

Hello, Qlik community!

I am in on-prem Compose trying to map a table from the source to a filtered table in the data warehouse.

When [source].[record_type] = 'O', that record should be added to the target DW table. I have set up and tested the filter, which seems to work correctly within the Filter Editor.

JacobTews_0-1686692740036.png

However, when I generate the task statements and run them, all of the rows with other [record_type]s are also included in the resulting table.

I combed through the statements individually, and tested directly on my source database the SELECT used to populate the filtered staging table. It returns only the filtered records as expected.

What am I missing here? Thanks for helping me learn this valuable tool!

1 Solution

Accepted Solutions
JacobTews
Creator
Creator
Author

It turns out that yes, I was misunderstanding how the filters work. They won't remove records already in your target table, even if they don't meet the condition; they only look at the source and INSERT records that meet the condition and are not in the target.

Clearing out the table and rerunning the task statements did the trick for now.

Thank you for joining me on this saga. I hope it has been informative for you!

View solution in original post

2 Replies
JacobTews
Creator
Creator
Author

Have continued exploring, and found this tidbit which may be of interest:

JacobTews_0-1686694565117.png

The staging table gets populated correctly (161/241 records should be included)

 

However, when it comes time to update the target table, nothing happens:

JacobTews_1-1686694706362.png

 

Maybe I am misunderstanding how the filter mechanism is supposed to function?

JacobTews
Creator
Creator
Author

It turns out that yes, I was misunderstanding how the filters work. They won't remove records already in your target table, even if they don't meet the condition; they only look at the source and INSERT records that meet the condition and are not in the target.

Clearing out the table and rerunning the task statements did the trick for now.

Thank you for joining me on this saga. I hope it has been informative for you!