Search Filters
Users can search for Contacts by selecting various filters within a panel on the left-hand side of the page before they run a query. Each type of filter can be independently configured to be shown or hidden, by setting various pieces of configuration metadata to Active.
The filter types, and the controlling metadata, are as follows:
| Filter Type | Controlling Metadata Developer Name |
|---|---|
| Boolean Filter | Search_Boolean_String_Hidden |
| Record Types Filter | N/A |
| Location Filter | Search_Location_Filter_Hidden |
| Additional Field Filter | Search_Additional_Filters_Hidden |
| Codes Filter | Search_Code_Filter_Hidden |
Search modes
There are two distinct modes available when using Search - Basic and Advanced - which can be toggled between via a selector at the top of the filters panel. All of the filter types listed above are available in both modes. By default all users will have access to both modes, but there are two user settings which can be used to configure access at a user, profile and org level:
- Search/Match Mode Access - controls whether or not Advanced mode is available; works on an additive basis whereby BASIC grants access to only Basic mode and ADVANCED grants access to both modes
- Search/Match Mode on Load - sets the default mode (when both are available)
Whenever a user visits Search they will be presented with whichever mode they last used, as long as they still have access to it. Search/Match Mode on Load is chiefly useful for determining the mode displayed when new users first visit Search.
Basic mode
Basic mode presents a limited UI which is intended for the quick construction of search queries of low complexity. As such, it has the following limitations:
- The order of the filter types cannot be changed
- The overall logical relationship between each different type of filter is always AND, although it is possible to specify AND or OR as the internal relationship within Additional Field Filters and the Codes Filter
- It is not possible to include multiple instances of the same filter type other than for Additional Field Filters
See each individual page for more details on the specifics of each filter.
When switching from Basic to Advanced, all current filters will be recreated within the Advanced mode UI. However, due to the limitations of Basic mode it is not possible to maintain Advanced filters when switching in the other direction.
Advanced mode
Advanced mode includes all of the same filter types as Basic mode, but within a much more flexible UI that allows for the construction of significantly more complex search queries. The Record Types Filter works exactly as per Basic mode but for all other filter types users can build bespoke queries by adding new filters one-by-one in the desired order, first selecting the type of filter and then specifying the exact criteria.
Only a single Boolean Filter can be included as such queries are executed against the CV data indexed in the Daxtra database.
By default the overall logical relationship between all filters is AND, but there is also an Add Filter Logic option which assigns each filter a number and allows the user to specify more complex logic through the use of AND, OR and parentheses, e.g. (1 AND 2) OR (2 AND 3). When opened the filter logic field is automatically populated with AND relationships between all current filters.
NOT as a logical operator is not supported for filter logic but it is possible to apply individual filters as negatives, e.g. using NOT in a Boolean Filter, using Exclude/Not Equals/Does Not Contain for Additional Field Filters, and using NONE OF for Codes Filters.
Due to the open-ended nature of the query construction process it is possible that some queries are too complex to be executed within Salesforce's SOQL limits. In this scenario the user will be advised to simplify their query where possible.