This recent update brings a ton of flexibility and control when it comes to working with the content of a Checklist field inside a Formula. Be sure to read till the very end!
First, we've enabled three subfields within a parent Checklist field. These are accessible through a dot notation, similar to how you would access fields through a Linked Record:
[Checklist].[Assignee]
Returns a list of assignees from all items
[Checklist].[Completed]
Returns a list of true/false statuses from all items
[Checklist].[Due Date]
Returns a list of due dates from all items
Again, similar to multiple value Linked Records, the returned lists are to be wrapped up with an aggregate function. Examples:
MAX([Checklist].[Due Date])
Returns the latest Due Date among all items
ARRAYJOIN([Checklist].[Assignee], "; ")
Returns a list of all assignees separated with a semicolon.
Finally, here goes the new function -- CHECKLIST_COUNT()
As the name suggests, it can count itmes within a given Checklist field. But it accepts multiple conditions to make it more fun.
Examples:
Counts items assigned to a specific person:
CHECKLIST_COUNT([Checklist], [Checklist].[Assignee] = "Artem Kunytsia")
Counts items assigned to a specific person that have not been completed yet.
CHECKLIST_COUNT(
[Checklist],
[Checklist].[Assignee] = "Artem Kunytsia" AND
[Checklist].[Completed] = False )
Counts items assigned to a specific person that have not been completed yet and are overude.
CHECKLIST_COUNT(
[Checklist],
[Checklist].[Assignee] = "Artem Kunytsia" AND
[Checklist].[Completed] = False AND
[Checklist].[Due Date] < NOW())
Live screenshot:
Let us know what you think. Which of your use cases does this update solve?