I want to bulk copy using JQL, a text field to a number field using scriptrunner
The OOB built in scriptrunner bulk copy function doesnt support text to number field
here's how, use this in the script console on scriptrunner side:
import com.atlassian.jira.component.ComponentAccessorimport com.atlassian.jira.issue.ModifiedValueimport com.atlassian.jira.issue.search.SearchProviderimport com.atlassian.jira.issue.util.DefaultIssueChangeHolderimport com.atlassian.jira.jql.parser.JqlQueryParserimport com.atlassian.jira.web.bean.PagerFilterimport com.atlassian.jira.issue.search.SearchQueryimport com.atlassian.jira.issue.MutableIssuelog.warn("--- Start script -----------------------------------")def jqlQueryParser = ComponentAccessor.getComponent(JqlQueryParser)def searchProvider = ComponentAccessor.getComponent(SearchProvider)def issueManager = ComponentAccessor.issueManagerdef user = ComponentAccessor.jiraAuthenticationContext.loggedInUserdef customFieldManager = ComponentAccessor.customFieldManager//sourceCFdef customFieldOld = customFieldManager.getCustomFieldObject(13304) //destinationCFdef customFieldNew = customFieldManager.getCustomFieldObject(15401)def issueChangeHolder = new DefaultIssueChangeHolder()// edit this JQL query for issue set that you want to changedef query = jqlQueryParser.parseQuery("cf[13304] is not EMPTY")def searchResults = searchProvider.search(SearchQuery.create(query, user), PagerFilter.unlimitedFilter)log.warn("Total issues: ${searchResults.total}")searchResults.results.each { documentIssue ->def key = documentIssue.document.fields.find { it.name() == "key" }.stringValue()def issue = issueManager.getIssueObject(key)//parsing from string of customFieldOld to doubledef newValue = Double.parseDouble(issue.getCustomFieldValue(customFieldOld).toString())//set new field with newValue intcustomFieldNew.updateValue(null, issue, new ModifiedValue(issue.getCustomFieldValue(customFieldOld), newValue), new DefaultIssueChangeHolder())}log.warn("------------------------------------------- End script ---")
It looks like you're new here. Sign in or register to get started.