Hello,
I am working on an automation for our main Team-Managed project (44 Epics with 10-100 Stories each, some of them have up to 10 subtasks each) , that would send a weekly reminder of unresolved tasks and subtasks assigned to them (from the current sprint).
Ideally I'd like the email to look like this:
Assignee Name and greeting
Current Sprint unresolved Task 1
Current Sprint unresolved Task 2
Current Sprint unresolved Sub-task 4
Current Sprint unresolved Sub-task 5
Current Sprint unresolved Task 7
Current Sprint unresolved Sub-task 7.1
With Tasks and Subtasks being listed independantly, unless both Task and Subtask are Unresolved and assigned to the Assignee.
I am stuck at filtering the subtasks properly, as I only seem to manage to filter out all the subtasks , regardless of the sprint.
I guess that because we are on a team-managed project, the simple JQL
project = "MB" and sprint in openSprints() and type in subTaskIssueTypes()
doesn't work. I'd really like to give it one last try/push before giving up and migrating the whole project to a new one.
This current setup sends me a list which is very close!
But I still don't get the Subtask which is nested under a Task not assigned to me (MB-694), and I get the unwanted subtask (MB-696) which is Done and I only want unresolved issues.
Any help or idea would be highly appreciated!
Also , in the email ChatGPT suggested trying #IF functions however I always get an error - if it's possible to achieve the results via functions in HTML , could you help me with ideas?
Hi @Elisabeth Stefanovic -- Welcome to the Atlassian Community!
First things first: do you ever expect more than 100 issues (not subtasks) to be in the active sprint(s) AND assigned to people? If so, your scenario likely cannot be solved with a single automation rule due to the built-in limits. Instead, you would need to split up the issues into sets to get under the limits.
Let's assume you are under those limits...
To find all of the issues in the sprint, part of your shown JQL could be used (ignoring assignments for a moment), and assuming all completed items are marked as Resolved:
project = MB AND sprint IN openSprints() AND Resolved IS EMPTY
And within each returned issue, their subtasks are also returned as a list. Using that information, a rule could use the Lookup Issues action to first gather the above issues with their subtasks, and then parse them to make a combined list of assignees for advanced branching over the distinct ones.
The combined list of distinct accountId values for the assignees would be this expression that could be used in the advanced branch to find the assigned and unresolved issues for each person (with another Lookup Issues action):
{{lookupIssues.assignee.accountId.distinct.join(",").concat(",").concat(lookupIssues.subtasks.assignee.accountId.flatten.distinct.join(",")).split(",").distinct}}
How that works is:
There would be additional steps if people can be assigned to issues which are not in the active sprint (or their issue subtasks). That would require first finding the issue keys from the original lookup to help the search.
Kind regards,
Bill
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.