You're enrolled in our new beta rewards program. Join our group to get the inside scoop and share your feedback.
Join groupJoin the community to find out what other Atlassian users are discussing, debating and creating.
Hi all, I want to get custom field value with script runner, but without mentioning any information about issue key. I am only want to mention project name. It is possible to find exactly which mentioned field are changed and have counter for it? For example I have date custom fields(D1 and D2) and I glad to know which custom field are modified and which kind of new value that receive. I write simplified script that is not cover for my project. Please help :) Thanks in advance.
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.IssueManager
IssueManager issueManager = ComponentAccessor.getIssueManager();
def issue = issueManager.getIssueObject("TEST-3");
def changeHistoryManager = ComponentAccessor.getChangeHistoryManager()
def changeItems = changeHistoryManager.getAllChangeItems(issue)
def customField = ComponentAccessor.getCustomFieldManager().getCustomFieldObject("customfield_10500");// here replace the ID with ID of your custom field.
def value = (String)issue.getCustomFieldValue(customField);
if(customField != null) {
issue.getCustomFieldValue(customField);
def userUtil = ComponentAccessor.getUserUtil()
def last_change = changeItems.sort(false).last()
def text1 = "LAST MODIFIED FIELD:"+ last_change["field"]+ "; FROM VALUE:"+ last_change["fromValue"] + "; TO VALUE:"+ last_change["toValue"]
return text1;
} else {
return "NO CHANGES"
Hi @Alik ,
You can display the history of updates on an issue using this script :
import com.atlassian.jira.issue.history.ChangeItemBean
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.issue.IssueManager
IssueManager issueManager = ComponentAccessor.getIssueManager()
def changeHistoryManager = ComponentAccessor.getChangeHistoryManager()
def issue = issueManager.getIssueObject("TST-2");
def ch = changeHistoryManager.getChangeHistories(issue)
for(int i=ch.size() - 1; i >= 0; i--){
for (ChangeItemBean bean:ch.get(i).getChangeItemBeans()){
log.error("field : " + bean.getField() + " From : " + bean.getFromString() + " To : " + bean.getToString() + " by : " + ch.get(i).getAuthorKey() + " On date : " + bean.getCreated() )
}
}
Hope that helps.
Antoine
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Atlassian's marketplace partners have had a very productive start to 2021! Since our last roundup, our developer community has added over 160 new cloud apps to the Atlassian Marketplace to help you...
Connect with like-minded Atlassian users at free events near you!
Find an eventConnect with like-minded Atlassian users at free events near you!
Unfortunately there are no Community Events near you at the moment.
Host an eventYou're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.