A core goal of Planhat since day one has been to offer a broad range of flexibility to handle the many varied use cases in Customer Success - and business more general - globally.
Organising and filtering data is central to this. Our approach to filtering aims to provide a consistent and highly flexible experience, regardless of whether you are filtering data related to Companies, Contacts, Tasks, Invoices, Licenses, Opportunities, Workflows or even in Page widgets.
The approach to filters in upgraded Planhat (ws.planhat.com) is slightly different to what you may be familiar with from original Planhat (app.planhat.com). You can read more about this change here.
In upgraded Planhat, you can still create/manage Global Filters (in the "Data" Global Tool), but also it's easy to apply temporary quick filters in Data Explorer or Pages.
When creating a Global Filter, there are three main types:
Filter: this lets you define a segment of your portfolio based on some rules, like "companies in phase = onboarding"
Top List or Bottom List: this is a combination of a filter (e.g. "Companies in Phase = Onboarding") and a distribution rule (e.g. "top 10% of the records")
π© Read more about Top/Bottom list filters and how they work here!
Let's look at the rules in standard Filters.
The available commands (operators) will correspond to the field type, so for example if your field is a date, the commands will be things like "days ago" whereas if it's a numeric field, the commands will be things like "more than" or "less than."
Once you have selected the command (operator), complete the rule via a dropdown menu or by typing (depending on the field type).
As a simple example, if your field is related to wizards, your command could be "Equal to" and your selection "Ron Weasley".
To add more rules, click "+ Rule", and a new row will appear to configure/complete.
Filters have a few additional components to them. This is where the power lies...
Match Rules
Match Rules have two options:
ALL: all of the criteria below will need to be present for the filter to apply
ANY: any of the criteria below can be present for the filter to apply
For example, I would like to filter on all accounts where Bob is the Company owner, and I would like the Company to either have the "Enterprise" Tier or have an ARR value over $150,000. Looking at the filter below, you can see I have achieved this by using both match options.
If your data is Gryffindor, Slytherin, Hufflepuff and Ravenclaw, an "all" rule would require all four houses to be present and an "any" rule would require just one of them to be present (even Slytherin) π§.
Group Rules
The screenshot above shows an example of a group within a filter. A group is a new set of criteria that is headed by a new Match Rule.
Groups are used when you need to apply a different Match Rule, or after you have referenced a different data model. (More on this below - it's awesome.)
As an example, below we are finding all Companies owned by Taylor, in Phase "Success", and that have either a Health Score more than 8 or an NPS more than 8.
You can use multiple groups in filters to create huge flexibility, and if you forget criteria in one group just mouse over it and the blue plus sign will appear to add more rules.
π Power Filtering by Referencing Other Models
Planhat is built with a structure of data models. Examples of models are Companies, Contacts, Licenses, Invoices, Conversations, Tasks etc
When you build a filter, the field options will come from which ever model your filter is built on. When creating Global Filters in the "Data" Global Tool, you always select your choice of model from the column on the left-hand side, before selecting the "Global Filters" tab in the middle and designing your filter.
Click the image to view it enlarged
Sometimes, you want a filter to combine rules from different models. For example:
To find all Companies that have a low Health Score and are still in the Onboarding Workflow, you need to combine data from the Company and Workflow models.
To find all Companies owned by a specific team member with a CEO as a Contact, you are combining data from the Company and End User models.
To find all Companies coming up on renewal that have a recent Conversation labelled Bug combines data from the Company model and the Conversation model.
To make these cross-model connections, you need to use the "Match by" option in filters.
Let's take a look at these examples, all built on the Company model:
Example 1: Find all Companies that have a low Health Score and are in the Enterprise Onboarding Workflow
Example 2: Find all Companies with an End User listed as CEO in the Position field
Example 3: Find all Companies coming up to renewal that had a Conversation where the custom field "Escalation" was toggled on
With each example, you can choose which model to build from:
you can start from the Company model and look for any Company owned by Bill that has End Users with Position "CEO",
or you can start from the End User model and look for all End Users with Position "CEO" on a Company owned by Bill
- the results will be the same.
Here are the 2 versions:
The difference is that the first filter is applied to Companies (e.g. in a Company Data Table), whereas the second filter is applied to End Users (e.g. in an End User Data Table).
Special Commands in Filters
As you can see from the above examples, after using a "Match By" field, the command used is Match By.
Most of the commands (operators) are pretty obvious and relate to the data in the field, so date fields have commands like "days ago".
There are a couple of additional commands that have super-powers so below are quick definitions.
Match By: Relate one model to another using Match By to filter elements that match the criteria
Ignore By: Relate one model to another using Ignore By to ignore elements that match the criteria
Match By and Ignore By commands have the special behaviour of automatically/by default including archived records on its nested conditions - as opposed to what happens when filtering directly on those model types - this applies to models with an archived system field: Workflows, End Users, Conversations, Tasks.
Pick By: Filter within a pre-existing Filter on the same model using Pick By.
Exclude By: Ignore elements within a pre-existing Filter on the same model using Exclude By.
Any Of: Filter on multiple options in a multi-pick list using Any Of.
None Of: Exclude multiple options in a multi-pick list using None Of
Find By: Filter on text fields or conversations that contain specific words using Find By.
This final one is extremely powerful as you could, for example, create a Company model filter looking for any Company with a conversation that included the word "cancellation"!