Abstract
This code snippet unchecks a specific value of a standard or custom multi-valued type field (typically a multi-select field). The multi-valued fields can either be a collection of objects or a set of values. While unchecking all is easy (set the field with a blank value), unchecking only a particular option/value requires code.
Logic
Iterate over the array of currently selected options and add them into a new array ignoring the option that needs to be unchecked.
...
The output of this code snippet is an array of objects which you could use to remove a particular option from the selected options of a field in one of the Set Field Value post-functions.
Note |
---|
These code snippets require "Treat as JSON" option to be selected |
Remove the reporter from the JIRA service desk customers
Code Block language js linenumbers true {{ issue.fields['Service Desk Customers'] | filter({nameaccountId:issue.fields.reporter.nameaccountId} , true ) | dump }}
Clear the option "To Print" after the print has been generated
Code Block language js linenumbers true {{ issue.fields['Documents processing'] | filter({name:"To Print"} , true ) | dump }}
Remove the label "Merged" when QA re-opens a ticket that has been merged into master and handed over to QA.
Code Block language js linenumbers true {{ issue.fields['Labels'] | filter({name:"Merged"} , true ) | dump }}
...