The Assignment Exclusion Field setting allows you to control exactly which records should be included in the Resource Hero Matrix, Manage Assignments, or Time Tracking lightning component interfaces.
For example, the following time tracking matrix shows all assignments for a resource named Olivia White.
Since assignments might be against Opportunities, Projects, or other non-billable records, this list could get quite long. Using the Assignment Exclusion Field functionality, we could separate this single time tracking matrix into three district matrices, one for Opportunities, one for Projects, and one for other non-billable assignments.
This keeps each matrix at a manageable height and makes it easy to find the assignment you need quickly.
In addition to the Matrix, the same logic can be applied to other interfaces like Manage Assignments and Time Tracking Lightning Component.
How to set it up
Each interface allows you to specify an Assignment Exclusion Field which can be either a checkbox field or a checkbox-based formula field.
If no field is specified, all assignments for a record will be displayed. If a field is specified, only assignments where the field value is TRUE will be displayed and assignments where the field value is FALSE will not be displayed.
To create the Matrix in the Opportunities tab above, we first created the formula on the Resource Assignment object called Is Opportunity:
NOT(ISBLANK( ResourceHeroApp__Opportunity__c ))
Next, we create a visualforce page which will use the new Is Opportunity field in the Assignment Exclusion Field setting:
Only those Resource Assignments where the Is Opportunity field is TRUE will be included.
Example – Manage Assignments Component
Similar logic can be applied to the Manage Assignments component as well. For example, Projects within XYZ Company have project teams of 25 – 35 resources.
Instead of managing all of their resources within a single assignments screen, they would prefer to segment the assignments within three main groups, the account team, the development team, and the testing team, which are determined by the Role of the assignment. They could accomplish this by creating three checkbox formulas on the Resource Assignments object.
The Is Account Team formula:
ISPICKVAL(ResourceHeroApp__Role__c, "Account Manager") || ISPICKVAL(ResourceHeroApp__Role__c, "Project Manager")
The Is Dev Team formula:
ISPICKVAL(ResourceHeroApp__Role__c, "System Architect") || ISPICKVAL(ResourceHeroApp__Role__c, "Developer")
and the Is Test Team formula:
ISPICKVAL(ResourceHeroApp__Role__c, "QA Tester")
We can then use these fields for each of our Manage Assignment components that we add to the page.
The result is that we have three separate Manage Assignment components, with each displaying assignments for a specific team.
Example – Show Projects and only high-probability Opportunities
The following time tracking matrix shows all assignments for a resource named Olivia White.
But let’s say that you wanted to limit the assignments shown on a Resource time tracking matrix to only those that are related to a project OR to opportunities with a probability greater than 75%. You could create a formula field on the Resource Assignment object called Projects and High Prob Opps Only with the following formula:
NOT(ISBLANK(Project__c) || (NOT(ISBLANK(ResourceHeroApp__Opportunity__c)) && ResourceHeroApp__Opportunity__r.Probability > 75))
We can then use this field as the Assignment Exclusion Field for our time tracking matrix:
You can now see that the matrix only shows the assignments for projects and for high probability opportunities.