This article is for Data Center.
Problem
We have created a custom formula that decides a column value based on attributes. This formula determines whether the issue is within a Plan. They need to have the value rolled up to determine at the parent levels if this should be in the plan.
Hierarchy:
-
Epic → Story → Sub-Task
Options/Values:
-
Committed, Not in Plan
If a Sub-Task is “Not In Plan” (as determined by the formula), it should be rolled up to the parent Story, which would also effectively roll up to the Epic.
Say a parent Epic has 2 Stories, each with 2 Sub-Tasks. If any Sub-Tasks are “Not In Plan”, then “Not In Plan” should be rolled up to the parent Story. Likewise, if any Story is “Not In Plan”, this should be rolled up to the parent Epic.
If any Sub-Task is “Not in Plan,” we know both the parent Story and the parent Story’s parent Epic should also be “Not in Plan”.
The column is using a formula already that looks like the following:
KEY AND
If (NotInPlanSand, "Not In Plan",
If (NotInPlanSandEpic, "Not In Plan",
If (AtRiskSand, "At Risk",
If (UndeterminedSand, "TBD", "Committed"))))
Is there a way to add to this so that if “Not in Plan” is the option, it is rolled up to the parent issue?
I need something like this:
-
Epic
-
Story -
Not In Plan-
Sub-Task 1 -
Committed -
Sub-Task 2 -
Committed
-
-
Sub-Tasks don’t change the Story because they are both “Committed”.
Story DOES change the Epic because Story is “Not In Plan”.
Each level needs to change the one directly above it.
In this case:
-
Epic
-
Story -
Committed-
Sub-Task 1 -
Not In Plan -
Sub-Task 2 -
Committed
-
-
This would change Story to Not In Plan, then the Epic to Not In Plan.
Solution
This formula gathers the information filled in the Subtasks issues and rolls it up (according to the formula conditions) to the Story (parent) and the Story’s parent (Epic).
WITH child_values = VALUES#CHILDREN{SelectListCf}:
IF SEARCH("Not In Plan", child_values):
"Not In Plan"
ELSE IF SEARCH("Committed", child_values):
"Committed"
ELSE SelectListCf