При открытии в Excel данные в файле ods, созданном в JasperSoft, не отображаются.JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 При открытии в Excel данные в файле ods, созданном в JasperSoft, не отображаются.

Сообщение Anonymous »

Я делаю отчеты с помощью Jasper Soft — составляю таблицы, генерирую jrxml, вычисляю данные и заполняю этот шаблон.

Код: Выделить всё

public static void exportToOds(List jasperPrints, ByteArrayOutputStream output) {
try (ByteArrayOutputStream outputStream = output) {
JROdsExporter exporter = new JROdsExporter();
exporter.setExporterInput(SimpleExporterInput.getInstance(jasperPrints));
exporter.setExporterOutput(new SimpleOutputStreamExporterOutput(outputStream));

SimpleOdsReportConfiguration configuration = new SimpleOdsReportConfiguration();
configuration.setOnePagePerSheet(true);
exporter.setConfiguration(configuration);

exporter.exportReport();
} catch (Exception e) {
throw new RuntimeException("Error exporting report to ODS", e);
}
}

Код: Выделить всё

public void fill(UUID templateId, List jasperPrints, StorageMtsData data) {
List sheet = data.getStorageMtsDataSheet();

JasperReport jasperReport = compileReport(String.format("report/%s/StorageMTCMainReport.jrxml", templateId));
JasperReport jasperSubReport = compileReport(String.format("report/%s/StorageMTCSubReport.jrxml", templateId));
JasperReport jasperSubSubReport = compileReport(String.format(
"report/%s/StorageMTCSubSubTAReport.jrxml",
templateId
));
JRBeanCollectionDataSource mainDataSource = new JRBeanCollectionDataSource(sheet);
Map params = new HashMap();
params.put("SUBREPORT_PATH", jasperSubReport);
params.put("SUBREPORT_SUBREPORT_PATH", jasperSubSubReport);

JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, params, mainDataSource);
jasperPrints.add(jasperPrint);
}
}
Дело в том, что при открытии файла ODS с помощью OpenOffice или LibraOfiice заполняются все таблицы, а если открыть их с помощью MicrosoftExcel, то только пустые таблицы. Если открыть его с помощью OpenOffice или LibraOfiice и сохранить, то после этого при открытии с помощью Excel все данные будут там. Сравнил файл до сохранения и после сохранения - версия манифеста меняется: до сохранения - 1.0, после сохранения - 1.3. Мне нужно немедленно открыть созданный файл ODS с помощью Excel без промежуточных сохранений.

Подробнее здесь: https://stackoverflow.com/questions/790 ... rated-in-j
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»