Hi All,
I am trying implement the post function for automatic transition (using ScriptRunner) for certain Service Desk requests and was wondering how I can write a condition to do that?
I tried the following:
issue.get("Customer Request Type") == "IT Help"
issue.get("Customer Request Type").value == "IT Help"
issue.get("Customer Request Type").value.toString() == "IT Help"
Thanks!
Hi
So your condition should be
So the value that the Customer Request Type has is an enigma, because is not the one you see. For example for the IT Help is
isdt/getithelp
So your condition will be
import com.atlassian.jira.component.ComponentAccessor
def cf = ComponentAccessor.customFieldManager.getCustomFieldObjectByName("Customer Request Type")
def requestType = issue.getCustomFieldValue(cf)
passesCondition = requestType == "isdt/getithelp"
Now in order to find the value you have to use for the comparrison the trick I use is I go to the script console and run the following script
import com.atlassian.jira.component.ComponentAccessor
// get an issue that has the Request Type that you want to find the id for
def issue = ComponentAccessor.issueManager.getIssueByCurrentKey("ISDT-9")
def cf = ComponentAccessor.customFieldManager.getCustomFieldObjectByName("Customer Request Type")
issue.getCustomFieldValue(cf)
Hope that help,
regards, Thanos
This worked.
Thank you!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hey All,
I am having the same problem, but this is not working for me. I was able to track down the request type value, it is super crazy, but it just throws a false every time. Any thoughts of what I may be doing wrong?
import com.atlassian.jira.component.ComponentAccessor
def cf = ComponentAccessor.customFieldManager.getCustomFieldObjectByName("Customer Request Type")
def requestType = issue.getCustomFieldValue(cf)
if(requestType == "itsd/1747d241-af6a-4a7a-8514-98e314e3b09c")
{return true}
I am not getting any errors. The execution is successful, so it is hard to understand why it resolving as false. The email just never goes out. This is a custom email post function, just FYI.
Any help would be awesome. This just seems like it should be working.
Thanks,
Jason
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Jason,
I was attempting the same thing. I found out that requestType is not a string, and so the == comparison won't work. This is how I solved it.
if(requestType.toString() == "itsd/1747d241-af6a-4a7a-8514-98e314e3b09c")
{return true}
Best,
Dave
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Old thread, but wanted to thank you for providing the ScriptRunner console trick for getting a request type value. Saved my bacon. :-)
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thanks to all who helped solve this puzzle. Many thanks.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Atlassian Government Cloud has achieved FedRAMP Authorization at the Moderate level! Join our webinar to learn how you can accelerate mission success and move work forward faster in cloud, all while ensuring your critical data is secure.
Register NowOnline 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.