Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

Need to update Epic Status from DONE back to TO DO

Victoria Danner
Contributor
April 3, 2019

I had previously marked an Epic as Done, as I considered it complete.  We were asked to add another Story which we did, but now I'm unable to return the Epic Status to TO DO.  My research thru Atlassian Community tells me that this is a locked field.  Is there a JQL statement I can run to return this to TO DO status?

6 answers

1 accepted

2 votes
Answer accepted
Randy
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 3, 2019

Check your screen for editing epics and verify that Epic Status is included in the screen.

Victoria Danner
Contributor
April 6, 2019

It's taken me some time to get back to researching this.  We considered modifying the transitions in the workflow, but since all of our projects are tied to an existing workflow it seemed a bit risky, as my research tells me you must COPY the existing workflow to make edits and then apply the copy as the new, active one.  Just seemed overkill.

I did find that I was able to add the Epic Status field to our Epic edit screen.  I was then able to change the status from Done to In Progress and that met my needs.  It now shows in my Kanban under In Progress, which is really what I wanted (not To Do).  Thank you both for your assistance, but I found Randy's answer was the one I could use to resolve my question.

4 votes
Darren Davie
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
February 23, 2021

Correct answers were given above but showing the pictures might help. You will need to be project Admin to add the Epic Status field so you can update it.

Got to Project settings

Epic status - go to project settings.PNG

Choose Epic under Issue Types
Epic statusd - choose epic under issue types.PNG

Add the Epic Status field
Epic status - add field.PNG

Then go back to the Epic you want to change the status and change the Epic Status value.

epic status - change value.PNG

2 votes
Test
Contributor
January 19, 2021

It never ceases to perplex me that Epics effectively have two parallel status fields - this is not in keeping with the level of agility Jira affords elsewhere and indeed seems like poor design with no tangible benefit. Why have inconsistent behavior across issue types? Especially when adding Advanced Road-mapping hierarchy above Epic, Epic remains the only level which requires this additional complexity.

Rutger S March 4, 2021

Completely agreed. This can't be explained to the average user.

Like Test likes this
Darren Davie
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
March 4, 2021

Yes, it confused me when I was trying to workout how to reopen the epic. I saw the normal Status field value and set that. Had no idea there was an Epic status or why it exists.

Like Test likes this
Johannes Rudolf
Contributor
July 19, 2021

Fully agree.

Like Test likes this
2 votes
Scott Pascoe
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
December 15, 2020

"Epic Status" is indeed a locked down field, and generally not available for editing.  My JIRA Admin and I figured out that by temporarily adding the "Epic Status" to the Epic's edit screen (which is an Admin only task, especially when the screen is shared amongst projects), a user with "Edit" permissions can then change the value.

We did that and then reverted the Edit Screen change to keep the ability set as Atlassian had configured.  The OP had also figured this out, but I thought it would be useful to pull this out to an individual answer...

Victoria Harding
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
June 17, 2021

This was very helpful. Thanks!

2 votes
Bethany Robinson April 3, 2019

@Victoria Danner , check the workflow for Epic issue type on your project, and make sure there is a transition that allows you to move the issue from "Done" back to "To Do" status. If you are not able to do this, then I suggest reaching out to your resident Jira admin. You can find more documentation on workflows in the Atlassian documentation here: https://confluence.atlassian.com/adminjiracloud/working-with-workflows-776636540.html

Victoria Danner
Contributor
April 4, 2019

This did help me confirm that it is part of a workflow that I'm not able to modify.  I actually am set as a JIRA Admin, but don't yet have any experience as this is new to us.  I will check out the documentation link you provided.  Thank you.

Like # people like this
0 votes
Jean-Christophe Gonzales April 10, 2025

Once the Epic is Closed, the Epic status is changed to Done once for all, and no way to reset it, so I struggled on this topic but I found "a" solution.

As a Jira (Server) admin, I compiled many articles to be able to change the Epic status using a Scriptrunner Custom script post-function on a Re-open transition :

// 3 steps as the Epic status field is a locked customfield

/************************************************************
Unlock the Epic Status field
************************************************************/
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.config.managedconfiguration.ManagedConfigurationItemService
import com.atlassian.jira.issue.CustomFieldManager
ManagedConfigurationItemService managedConfigurationItemService1 = ComponentAccessor.getComponent(ManagedConfigurationItemService)
CustomFieldManager customFieldManager = ComponentAccessor.getCustomFieldManager()
def cf = customFieldManager.getCustomFieldObjectByName('Epic Status')
if (cf) {
def mci = managedConfigurationItemService1.getManagedCustomField(cf)
if (mci)
{ managedConfigurationItemService1.removeManagedConfigurationItem(mci) }
}

/************************************************************
Change the Epic status value
************************************************************/
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.Issue
import com.atlassian.jira.issue.fields.CustomField
import com.atlassian.jira.issue.ModifiedValue
import com.atlassian.jira.issue.util.DefaultIssueChangeHolder

customFieldManager = ComponentAccessor.getCustomFieldManager()

// get the Epic Status field
CustomField epicStatusField = customFieldManager.getCustomFieldObjectByName("Epic Status")

// Define the new value, possible (exact) values are "To Do" "In Progress" "Done"
def newEpicStatusValue = ComponentAccessor.optionsManager.getOptions(epicStatusField.getRelevantConfig(issue)).find { it.value == "To Do" }
//def newEpicStatusValue = ComponentAccessor.optionsManager.getOptions(epicStatusField.getRelevantConfig(issue)).find { it.value == "In Progress" }
//def newEpicStatusValue = ComponentAccessor.optionsManager.getOptions(epicStatusField.getRelevantConfig(issue)).find { it.value == "Done" }

// Update the Epic Status value
epicStatusField.updateValue(null, issue, new ModifiedValue(issue.getCustomFieldValue(epicStatusField), newEpicStatusValue), new DefaultIssueChangeHolder())


/************************************************************
lock (back) the Epic Status field
************************************************************/
import com.atlassian.jira.config.managedconfiguration.ConfigurationItemAccessLevel

ManagedConfigurationItemService managedConfigurationItemService2 = ComponentAccessor.getComponent(ManagedConfigurationItemService)
CustomFieldManager customFieldManager2 = ComponentAccessor.getCustomFieldManager()
cf = customFieldManager2.getCustomFieldObjectByName('Epic Status')
if (cf) {
def mci = managedConfigurationItemService2.getManagedCustomField(cf)
if (mci)
{ def managedConfigurationItemBuilder2 = mci.newBuilder(); def updatedMci = managedConfigurationItemBuilder2 .setManaged(true) .setConfigurationItemAccessLevel(ConfigurationItemAccessLevel.LOCKED) .build(); managedConfigurationItemService2.updateManagedConfigurationItem(updatedMci); }
}

The code is probably not the most State of the art stuff but it works fine for my need and for yours too

Anyway, I still don't understand why and when this Epic status is changed automatically by Jira to In Progress, so the reset is always changed to To Do.

Hope this helps

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events