Filters  
   
   
 
Filters are rules that can be applied to UDM nodes and value-ranges to constrain the data that is retrieved. They are SQL-like in structure and can be thought of as extensions to the "where..." clauses that are used on retrieval. Filters are created on specific tables and they appear automatically in context, i.e. they appear on all UDM nodes that they can be applied on. They also appear on value-ranges that they can impact. Filters take session variables and passed parameters as inputs and can be made to use them in constraining data retrieval. They are reusable on multiple UDMs.

Filters can be very complicated and can cause Cartesian joins - data retrieval such that a given row appears multiple times on a page. Use them with caution - test them thoroughly before rolling them out on a site.

Filters can be used to build data-based security in a site. For example, consider a situation where you have page-based security by user ID on a sales order management site that you created. This implies that you have a table in your database that carries the IDs and passwords of all users who can log into your site. Consider that you have recorded the state code of the user's address in an Address table. Let's say you now want to build a mechanism where a given user can only see orders that have been placed by customers in his/her state. To implement this kind of data-based security, you can create a Filter on the Orders table that takes in the login ID from the session and uses that to limit data. Apply that Filter on all the Orders-related UDMs and the site now automatically ensures that only data related to the user's state is shown to a given user.

Click here to learn about creating and editing Filters.