Recently, a Qlikview user asked me if there was an easier way to filter on a numeric field. This seemingly simple task can be tricky, especially when there are many unique values, as there often is in a numeric field. This has come up several times in the past, so it seemed to be a nice topic to post. The action “Select in Field” can be a very useful tool to improve the overall user experience.
This is a nice method to allow users control of what filter they would like to apply to a given field. In this case, FPTS has many different numeric field values, so it could get tricky for the novice user to manually select any value greater than 40.
How to implement Qlikview Select in Field
Here are the steps to accomplish this task:
Step 1 – Create a variable and name it vSearchString
Then click on “Add”, type in vSearchString as Variable Name and click “OK”
Step 2 – Add an Input Box object to your Qlik app, then go into Properties
In the General Tab, select variable vSearchString as the Displayed Variable
In the Constraints tab, select “Predefined Values in Drop-down” in Value List section, then check the “Number Series” box and put in desired drop-down range (in Predefined Values section)
Step 3 – Add Button object to your Qlik app, then go into Properties
In the Actions Tab, add a “Select in Field” action
Enter the field you want to filter on in “Field” box, then add the following formula into the “Search String” box: =’=FPTS>vSearchString’
Now you have everything you need. Your Qlik app will look something like this:
Now, enter a value in the Input Box and click on the “Filter” button you just created. You will see that your chart (or any other objects in your Qlik app) will now filter down to cases where the FPTS field is greater than 40 (which is the value you input for vSearchString).
By using this technique, the user can now input a filter criteria and narrow down the contents of the chart. Doing this type of filter on a numeric field can be a little tricky, leading to unintended results. This solution provides a simple, clean method to accomplish this task.