Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

JQL doesn't return result

Manh Tuan Do February 7, 2021

Hi all,

I have a query 

JqlQueryBuilder queryBuilder = JqlQueryBuilder.newBuilder();
JqlClauseBuilder jqlClauseBuilder = queryBuilder.where();
jqlClauseBuilder
.defaultAnd()
.project(Constants.projectPipelineKey)
.issueType(Constants.ISSUE_TYPE_PIPELINE);
jqlClauseBuilder.and().customField(fieldPipelineCustomer.getIdAsLong()).eq(customerKey);

 but It doesn't return results even though my database has data.

Can anyone tell me where the error is?

Thanks!

1 answer

0 votes
Nir Haimov
Community Champion
February 8, 2021

Hi @Manh Tuan Do 

Assuming you are using Jira 8.0.0 and above.

Here is a working example:

import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.jql.parser.JqlQueryParser
import com.atlassian.jira.user.ApplicationUser
import com.atlassian.jira.web.bean.PagerFilter
import com.atlassian.jira.bc.issue.IssueService
import com.atlassian.jira.issue.IssueInputParametersImpl
import com.atlassian.jira.issue.search.SearchResults;
import com.atlassian.jira.bc.issue.search.SearchService;
import com.atlassian.query.Query;

ApplicationUser actor = ComponentAccessor.getUserManager().getUserByKey('user@domain.com')
JqlQueryParser jqlQueryParser = ComponentAccessor.getComponent(JqlQueryParser)
SearchService searchService = ComponentAccessor.getComponent(SearchService)
IssueService issueService = ComponentAccessor.getIssueService()

Query query = jqlQueryParser.parseQuery("status not in ('Closed', 'Done')")
SearchResults results = searchService.search(actor, query,PagerFilter.getUnlimitedFilter())
log.warn("All issues=" + results.getResults())

results.getResults() //gives you array of issues returned by the JQL

results.getResults().each { issue ->
//do here what ever you want with each issue.
}

Suggest an answer

Log in or Sign up to answer