This design pattern is not recommended for offline interfaces because reflecting immediate changes in an interface based on user interaction requires a connection to the server.
This scenario demonstrates:
How to store values from multiple fields to filter query results
How to use a!queryLogicalExpression() to query from multiple fields
Test it out
Select Sales in the department dropdown. The list of employees in the grid is now limited to those in the Sales department.
Click the Clear button. On the Last name field, enter "Johnson". The grid now contains only employees whose last name contains "Johnson".
Notable implementation details
Fields are set to refresh after keypress. As soon as an end user types in a value the filter will evaluate and reduce the datasubset. If this pattern is not desired, Designers should attempt to only evaluate after unfocus or use a search button that performs the evaluation.