Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,369,239
Community Members
 
Community Events
168
Community Groups

scriprunner get checkbox field value in workflow condition

Hi all, 

i've got a checkbox with values 'Yes', or 'No' and I'd like to execute a postfunction only if set to 'Yes'.  I've tried both of the statements below and neither works:

cfValues['SAR BI Reporting']?.value == 'Yes'
cfValues['SAR BI Reporting'] == 'Yes'

Thoughts?


Thank you,

Silvia

1 answer

1 accepted

0 votes
Answer accepted

You can examine the data in your log and find out the best way forward with something like this:

log.info cfValues['SAR BI Reporting']
log.info cfValues['SAR BI Reporting'].getClass()

Depending on what the second line gives you, you could lookup that class in the API documentation and figure out how to campare the value.

But from memory, I think checkbox returns an array. As a checkbox field with yes and no value, the results may be

  • ['Yes']
  • ['No']
  • ['Yes','No'] if both are checked

So you could try:

cfValues['SAR BI Reporting']?.contains('Yes')

Thank you. That sounds right. Would you know if there is a way to validate these statements (besides executing the workflow).

No, because the cfValue[] is a construct created by scriptrunner and only in workflows.

So there is no way to use that construct in the console or elsewhere.

You could create a temporary transition that does nothing (from any state to itself) and only output the value of your checkbox field to the log.

Suggest an answer

Log in or Sign up to answer
TAGS

Atlassian Community Events