В настоящее время я пишу простое приложение java, которое считывает данные из csv в jTable и генерирует отчет (.jrxml -> .jasper).При получении данных из JTable следует использовать параметры в методе fillReport?
Я сбор параметров в ArrayList карт так:
[{Description = 'qwerty', Title = 'asdfg', Amount = 1800},
{Description = 'uiop', Title = 'zxcv', Amount = 2500},
{Description = 'desc', Title = 'mnb', Amount = 510}]
Как я могу передать его методу fillReport (это требует java.util.Map)? Или, может быть, мне нужно использовать поля вместо параметров?
EDIT: Здесь Вы ожидали выход - заполненный JTable и данные из него в jasperView:
Вот мой код - я получаю DataSource из JTable:
JRDataSource dataSource = new JRTableModelDataSource(dataTable.getModel());
try {
JasperCompileManager.compileReportToFile("citibank_customReport.jrxml");
JasperPrint print = JasperFillManager.fillReport("citibank_customReport.jasper", listOfParameters, dataSource);
JasperViewer.viewReport(print, true);
}
К сожалению, метод fillReport не понимает массивы hashmaps. Как я могу исправить это?
@PetterFriberg Я попытался улучшить свой вопрос, может быть, теперь легче понять точную проблему? – gooornik07
Да, спасибо, вам не нужно использовать параметры, см. Ответ, у вас уже есть все данные в вашем источнике данных, который вы передаете в fillManager –