You've been invited into the Kudos (beta program) private group. Chat with others in the program, or give feedback to Atlassian.
View groupJoin the community to find out what other Atlassian users are discussing, debating and creating.
Hello Adaptavist,
I have been looking for the class to use so that i can write results obtain from my script to CSV. but the script runner console does not recognize the class mentioned here
https://commons.apache.org/proper/commons-csv/apidocs/org/apache/commons/csv/CSVPrinter.html
does any one knows the right class ? script runner version(5.8.0-p5)
import org.apache.commons.csv.CSVPrinter
the above is not recognized by script runner ;/
Kind regards,
Moses
@Leo This solution perfectly works in my case, i thought i could share, the java.io.FileWriter library was just hard to find, but i found it.
import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.bc.issue.search.SearchService
import com.atlassian.jira.jql.parser.JqlQueryParser
import com.atlassian.jira.web.bean.PagerFilter
import com.atlassian.jira.issue.CustomFieldManager
import com.atlassian.jira.issue.fields.CustomField
import java.io.FileWriter // already available for use no need to import
FileWriter attFds = new FileWriter("/sbclocal/apps/jira_home/export/Item.csv")
def jqlQueryParser = ComponentAccessor.getComponent(JqlQueryParser)
def searchService = ComponentAccessor.getComponent(SearchService)
def issueManager = ComponentAccessor.getIssueManager()
def user = ComponentAccessor.getJiraAuthenticationContext().getLoggedInUser()
def query = jqlQueryParser.parseQuery("Project = XYZ")
def search = searchService.search(user, query,PagerFilter.getUnlimitedFilter())
attFds.write("IssueKeys,IT,Summary")
attFds.write("\n")
for (item in search.results)
{
def issue = issueManager.getIssueObject(item.id)
CustomField cf10977 = ComponentAccessor.getCustomFieldManager().getCustomFieldObject("customfield_10977")
String cf10977Value = issue.getCustomFieldValue(cf10977)
CustomField cf10911 = ComponentAccessor.getCustomFieldManager().getCustomFieldObject("customfield_10911")
String cf10911Value = issue.getCustomFieldValue(cf10911)
String summary = issue.getSummary()
if( cf10977Value == cf10911Value) {
attFds.write("$issue,$cf10977Value,$summary")
attFds.write("\n")
}
}
Hi @Moses Thomas,
I never tried but you can refer below articles for more details
http://mindprod.com/application/csv.manual.html#CSVWRITER
// This is the CSV library Atlassian has built into Jira
// See https://wush.net/svn/mindprod/com/mindprod/csv/CSVWriter.java
import com.mindprod.csv.CSVWriter
// Convert a list of maps to a CSV string
def mapsToCSV(mapList) {
// Get keys from all maps and build a header row
def headerSet = new LinkedHashSet()
mapList.each { headerSet.addAll(it.keySet()) }
def headers = headerSet.toArray()
def sw = new StringWriter()
def csv = new CSVWriter(sw)
// Add header row
headers.each {csv.put(it.toString())}
csv.nl()
// Add rows - put in empty string if a header key doesn't exist in a row
mapList.each { row ->
headers.each {
csv.put(row.get(it)?.toString() ?: '')
}
csv.nl()
}
csv.close()
return sw.toString()
}
BR,
Leo
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
@Leo Thanks for the reply, This is not solution in my case , i don't need to map lists / linked hash set. I just need to write to csv file of some out put, but i found another way and i need to test it on the server and i will give feed back once it worked.
Kind regards,
Moses
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Catch up with Atlassian Product Managers in our 2020 Demo Den round-up! From Advanced Roadmaps to Code in Jira to Next-Gen Workflows, check out the videos below to help up-level your work in the new ...
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.