Not able to use JQL with Script runner updated Custom Field

Hi ,

updated the Text Field (single line) using script runner  , the script runner has updated the CustomFiled , but  not able to query using JQL with updated customField , it is not displaying any rows if updated custom Field used in JQL , but the value has been updated , updated column is Test_Email with Value 1001

Tried with Text & number in updation 

def tgtField = customFieldManager.getCustomFieldObjects(myIssue).find {it.name == "Test_Email"}
def changeHolder = new DefaultIssueChangeHolder();
tgtField.updateValue(null, myIssue, new ModifiedValue(issue.getCustomFieldValue(tgtField), "1001"),changeHolder);

Output from Database

mysql> select * from customfieldvalue where issue=(select id from jiraissue where issuenum='2079') and CUSTOMFIELD=11300;
+-------+-------+-------------+-----------+-------------+-------------+-----------+-----------+-----------+
| ID | ISSUE | CUSTOMFIELD | PARENTKEY | STRINGVALUE | NUMBERVALUE | TEXTVALUE | DATEVALUE | VALUETYPE |
+-------+-------+-------------+-----------+-------------+-------------+-----------+-----------+-----------+
| 41245 | 15500 | 11300 | NULL | 1001 | NULL | NULL | NULL | NULL |
+-------+-------+-------------+-----------+-------------+-------------+-----------+-----------+-----------+
1 row in set (0.00 sec)

Screen Shot After updating using the Script runner 

Jira_Jql.pngJira1_Jql.pngJira2_Jql.png 

2 answers

1 accepted

This widget could not be displayed.

You should use IssueService to update which will do the proper re-indexing for you after the update: https://docs.atlassian.com/jira/latest/com/atlassian/jira/bc/issue/IssueService.html#update-com.atlassian.jira.user.ApplicationUser-com.atlassian.jira.bc.issue.IssueService.UpdateValidationResult-

Here is some example code of how to use it in your script:

import com.atlassian.jira.component.ComponentAccessor

def user = ComponentAccessor.jiraAuthenticationContext.user.directoryUser
def issueManager = ComponentAccessor.issueManager
def issueService = ComponentAccessor.issueService

def issue = issueManager.getIssueObject("KEY")
def issueInputParameters = issueService.newIssueInputParameters()
issueInputParameters.setDescription("Updated description")

def validationResult = issueService.validateUpdate(user, issue.id, issueInputParameters)

if (validationResult.isValid()) {
    issueService.update(user, validationResult)
    log.info("Updated issue")
} else {
    log.info("Invalid update")
    log.info(validationResult.errorCollection)
}

@Gabrielle Bautista [ACP-JA] @Adam Markham [Adaptavist]

Thanks for support 

After reindexing it's works fine ,

Added  indexManager.reIndex(issue); in the code to  Reindex the field 

 

This widget could not be displayed.

Try re-indexing

Suggest an answer

Log in or Sign up to answer
Atlassian Summit 2018

Meet the community IRL

Atlassian Summit is an excellent opportunity for in-person support, training, and networking.

Learn more
Community showcase
Posted 10 hours ago in New to Jira

Are you planning to trial, or are currently trialling Jira Software? - We want to talk to you!

Hello! I'm Rayen, a product manager at Atlassian. My team and I are working hard to improve the trial experience for Jira Software Cloud. We are interested in   talking to 20 people planning t...

32 views 1 0
Join discussion

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you