I am attempting to run a fairly simple script in a workflow:
import static java.util.Calendar.YEAR; def year = new Date(); def priority = issue.getPriority().getString("name"); if(priority=="Critical"){ year = today + 365 } else if(priority=="Major"){ year = today + 730; } else if(priority=="Minor"){ year = today + 730; } else if(priority=="Trivial"){ year = today + 1095; } else { year = today; } return year.format('dd/MMM/yy');
this was not working so I tried to run it as a "script" out of the workflow.
import static java.util.Calendar.YEAR import com.atlassian.jira.ComponentManager import com.atlassian.jira.issue.fields.CustomField import com.atlassian.jira.issue.CustomFieldManagerCustomFieldManager customFieldManager = componentManager.getCustomFieldManager()def componentManager = ComponentManager.getInstance() def issueLinkManager = componentManager.getIssueLinkManager() def date = new Date() def nextYear = new Date() def category = getCustomFieldValue("Supplier Category").valueif(category=="Critical"){ nextYear = date[YEAR] + 1 } else if(category=="Major"){ nextYear = date[YEAR] + 2 } else if(category=="Minor"){ nextYear = date[YEAR] + 2 } else if(category=="Trivial"){ nextYear = date[YEAR] + 3 } date.set(year: nextYear) date.format('dd/MMM/yy') setCustomFieldValue("Supplier Re-evaluation Date", date)
any idea what I am doing wrong?
the way I read your reply, you are saying this I need to remove ".value"
import static java.util.Calendar.YEARimport com.atlassian.jira.ComponentManagerimport com.atlassian.jira.issue.fields.CustomFieldimport com.atlassian.jira.issue.CustomFieldManagerCustomFieldManager customFieldManager = componentManager.getCustomFieldManager()def componentManager = ComponentManager.getInstance()def issueLinkManager = componentManager.getIssueLinkManager()def date = new Date()def nextYear = new Date()def category = getCustomFieldValue("Supplier Category")if(category=="Critical"){ nextYear = date[YEAR] + 1} else if(category=="Major"){ nextYear = date[YEAR] + 2} else if(category=="Minor"){ nextYear = date[YEAR] + 2} else if(category=="Trivial"){ nextYear = date[YEAR] + 3}date.set(year: nextYear)date.format('dd/MMM/yy')setCustomFieldValue("Supplier Re-evaluation Date", date)
this does not work either, please let me know what an example might be so I can better understand the solution
I can't read your code here, but in the original post, you were giving a function that expects a *field* a *string*, which won't work.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I think you've fed the getCustomFieldValue function the name of the field, rather than the field object it requires.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.