Users often want to filter drop-down lists so that only certain of their values can be displayed to users. This filtering might be done based on the logged in user, the particular process or module, the status of the object.... etc etc.
There are two ways within product to go about this depending on what level you want to achieve the filtering at. Firstly, you can filter a list just on the particular window you are looking at, meaning that all other windows of that object will show the complete list (unless you filter there too). Alternatively you can filter the list at the object level by applying the filter to the object relationship meaning that anywhere the list is displayed on a window of the object it will be filtered.
To limit the values available to see on a list at the Window Level you would use a Complex List. To do this you must first open the 'Query and Report Designer' component and create the query that will be used, based on the list object. Once saved, open 'Window Manager' and specify on the appropriate field properties the Query Name. You must also set the property for 'Complex List' to True.
To limit the values in the list at Object level you will need to apply a filter instead. You create these via the Object Designer component. You open the object on which the list appears and select the relationship attribute of that object. In the properties you will need to select the 'Filter Selectors' property and click the Elipse button to open the 'Attribute Filter Selectors' window. From here you can apply or create filters for this particular relationship.
It is important to remember the following 'rules' when filtering drop-down lists on your windows:
- Make sure that to each field you only apply either an object-level filter or a window-level query. The filter will always override the query settings, however, if you have both applied and you have complex list turned on the list will not show any values.
- You can have a complex list based on an on object-level filter. Just make sure you don't also have a query specified in the field properties on the window. Also ensure you have more than one attribute selected as a column else the complex functionality won't work.
- Categories are tricky, if you're filtering out a category that has sub-categories all those sub-categories will be filtered too. Sonds obvious but is easy to forget.
- Filters don't like having 'OR' criteria, if you need to filter by x or y or z then use filter conditions on the 'Attribute Filter Selectors' window.