Hi,
I have a script listener- 'issue updated' that work ok,
I would like to run this script to all issues in this project.
how can I define the issue object so he can run on all issues (I will use script console)
You can make a JQL in a groovy script that will return an array of all issues in a project and then loop that array and execute your code on that issue.
The code could be something like this:
import com.atlassian.jira.component.ComponentAccessorimport com.atlassian.jira.issue.search.SearchProviderimport com.atlassian.jira.jql.parser.JqlQueryParserimport com.atlassian.jira.web.bean.PagerFilterdef jqlQueryParser = ComponentAccessor.getComponent(JqlQueryParser)def searchProvider = ComponentAccessor.getComponent(SearchProvider)def issueManager = ComponentAccessor.issueManagerdef user = ComponentAccessor.getJiraAuthenticationContext().getLoggedInUser()def projectKey = "DEMO" //THE PROJECT KEYdef queryString = "project = ${projectKey}"def query = jqlQueryParser.parseQuery(queryString)def projectIssues = searchProvider.search(query, user, PagerFilter.getUnlimitedFilter()).issues.keyprojectIssues.each{ issueKey -> def issue = issueManager.getIssueByCurrentKey(issueKey) //YOUR CODE}
I recommend to you to run it on a test environment (if you have any) first.
Hope it works for you.
Regards,Marcos
Hello @Dan27
Or you can get issues via getIssueIdsForProject()
import com.atlassian.jira.component.ComponentAccessordef project = ComponentAccessor.getProjectManager().getProjectByCurrentKey("DS")def issuesIds = ComponentAccessor.getIssueManager().getIssueIdsForProject(project.id)issuesIds.each {issueId ->def issue = ComponentAccessor.getIssueManager().getIssueObject(issueId)//YOUR CODE HERE}
Hope it helps!
Thanks!!!! Work!
Thanks !!
@Mark Markov , this variant just solved for part of a thing I am developing and is a clean, elegant way of doing this.
@Marcos Sanchez I voted for your answer as well as accepting @Mark Markov 's answer. These gave me two parts of things that I... need.
Cheers!
It looks like you're new here. Sign in or register to get started.