Object Filter
The project explorer has a filter feature to enable you to find objects in the project according to criteria that you specify.
Expand each heading below for more detail.

You can enter search criteria in the Filter field, ranging from part of an object name to complex expressions (see Filter expressions, below).
-
To perform a simple search by name, click in the Filter field and start typing any part of an object’s name. As soon as you start typing, the project explorer’s background will turn green to indicate that a filter is being used, and names of valid search candidates and their containers will appear darker than the rest.
-
While a filter is active, if you click on a container’s expand arrow
, and that container does not contain either a sub-container or a valid search candidate, it will be hidden from view.
-
When you clear the filter, hidden containers will be restored to view.
-
Filters are not applied to the recycle bin.

A new filter can be created by parsing expression to build up a syntax, which is then used in the matches below, to determine what attributes are being filtered.
The filter expression is firstly split into tokens by spaces, open brackets, and closed brackets, with brackets intact and empty/space tokens ignored. A leading hyphen (-) is considered a separate token. The tokens are then examined accordingly:
-
if it is an opening bracket (, it's the start of an expression.
-
if it is a closing bracket ), it's the end of an expression (note that the bracket must be first opened to be closed).
-
if it is a hyphen -, it inverts the operation of the succeeding expression or leaf filter.
-
if it is AND and there is a previous node, the previous and the next nodes both must match for the AND node to return a match. If there is no previous node, then the AND is a no-op.
-
if it is OR and there is a previous node, either the previous node or the next node must match for the OR node to return a match. If there is no previous node, then the OR is a no-op.
-
if it starts with created or changed, this token is the system 'creation date or modification date filter'. To be a valid filter, it must be followed by either < or > and then either a date (in YYYY-MM-DD or DD-MM-YYYY format) or a duration (number followed by s, m, h, d, w, mon or y). This filter will then match objects whose creation or modification date is before or after the specified date, or when the duration between current time and its creation/modification date is less/greater than the specified duration.
-
if it starts with has: (or the translation of that phrase), this token is a system 'object attribute filter', and the string after the colon is examined.
-
if it contains =, the object must have an attribute whose name (case insensitive) matches the substring before the = and whose value equals the substring after =
-
if it contains !=, it's 'not equal to' i.e. it acts like = except that the match result is inverted
-
if it contains <, <=, > or >=, the object must have an attribute whose name (case insensitive) matches the substring before the = and whose value is less than, less than or equal to, greater than, or greater than or equal to the substring after =, using a 'natural' string comparison, i.e. one which compares '6' to be less than '55'
-
if it starts with in: (or the translation of that phrase), this token is a system 'container filter', and to match, an object must have a parent whose name exactly matches the string after the colon.
-
if it starts with is: (or the translation of that phrase), this token is a system 'type filter', and the string after the colon is assumed to be a system type name, or a common alias.
-
Any text in the filter string that has spaces must be enclosed in quotes.
-
English terms may be used regardless of the selected language.
-
All other tokens are considered to match part of the item's primary name (case insensitive).
-
If the expression could not be parsed as a valid filter, such as if it has unclosed brackets, it throws an error.

The object filter also includes an advanced search panel for building complex filters more easily.
-
To access the search panel, click the
(Show filter options) button to the right of the Filter text box. The advanced filter panel will appear.
Note: Any criteria in the filter text box will also appear in the panel. However, if the cursor is inside a bracketed region of the filter text box when the panel is opened, only the text within brackets will be read into the panel.
In the panel, enter any relevant search criteria from the available options:
-
Name contains - any required part of an object name. This is the same as the Filter field.
-
Does not contain - any part of an object name to exclude.
-
Has attribute - enter an attribute name in the left field. You may also include a search value in the right field and whether to search for objects with attribute values less than, greater than or equal to the search value.
-
In container - a container in which to search for objects
-
Last modified - search for objects last modified before or after a given date.
-
Of this type - select an object type from the drop-down list.
-
Not of this type - select an object type from the drop-down list to exclude from the search.
Note: As with the simple search, as soon as any criterion is provided, the project explorer’s background turns green, and valid search candidates and their containers will be darker than the rest. The filter criteria will also appear as a string in the text box.
If you need to reset the criteria, click Clear.
-
Click anywhere away from the filter panel to hide it. The filter criteria will be retained and the filter applied.
-
It’s not necessary to complete all fields. You can use as many or as few search criteria as you need.
-
It’s not necessary to select the check boxes. These will be selected automatically when you run the search. You can reopen the filter panel and uncheck these to broaden the search without deleting the criteria.