in Jira Software 7.4.2, trying to use PostFunction , to conditionally create a subtask, when a checkbox field has the value "Yes".
the condition I have scripted here is not matching the value "Yes"
import com.atlassian.jira.component.ComponentAccessor;
import com.atlassian.jira.ComponentManager;
import com.atlassian.jira.issue.CustomFieldManager;
import com.atlassian.jira.issue.fields.CustomField;
import com.atlassian.jira.issue.IssueManager;
import com.atlassian.jira.issue.Issue;
import org.apache.log4j.Logger
import org.apache.log4j.Level
def log = Logger.getLogger("Jira Log")
log.setLevel(Level.DEBUG)
log.debug("POSTFUNCTION DEBUG: test log")
log.debug("POSTFUNCTION DEBUG: " + issue)
CustomFieldManager customFieldManager = ComponentAccessor.getCustomFieldManager()
def cField = customFieldManager.getCustomFieldObjectByName("Update Global Webpage")
def cFieldValue = issue.getCustomFieldValue(cField)
log.debug("POSTFUNCTION DEBUG: " + cFieldValue)
if (! cFieldValue) {
log.warn ("Failed to find Update Global Webpage field on issue: ${issue.key}")
def result = false
return
}
def result = cFieldValue as String == 'Yes'
The output to the jira log is this
... DEBUG dmarsico 843x581424x1 1r2alxr 10.82.178.50,0:0:0:0:0:0:0:1 /secure/WorkflowUIDispatcher.jspa [Jira Log] POSTFUNCTION DEBUG: test log
... DEBUG dmarsico 843x581424x1 1r2alxr 10.82.178.50,0:0:0:0:0:0:0:1 /secure/WorkflowUIDispatcher.jspa [Jira Log] POSTFUNCTION DEBUG: ET1-8
... DEBUG dmarsico 843x581424x1 1r2alxr 10.82.178.50,0:0:0:0:0:0:0:1 /secure/WorkflowUIDispatcher.jspa [Jira Log] POSTFUNCTION DEBUG: [Yes]
so it looks like the value is Yes,
I've tried 'Yes', "Yes"...
anyone see what I might be doing wrong here?
Hello,
Do you mean that the result variable is always true?
what I mean is its not returning true for that test...
(so it doesn't create the subtask when I have that field = to Yes)
if I hardwire the return to true, it does create the subtask, so its seems it "would" work if the return value was true, but I have yet to figure out why its not returning true in my example I've shown...
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I tried your code. It returns true if Yes and false if No.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Alexey,
Thanks, ok i'm going to stare at things more... As we cannot see what is going wrong here. Appreciate you spending the cycles on this.
Dave
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Alexey,
thanks so in the end it turned out that due to this being a checkbox, and returning in array format, i needed to test for '[Yes]'.
I'm all set now! thanks again.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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.