POI를 사용중인 경우 작동하지 않습니다. JRXlsExporter 대신 JExcelApiExporter를 사용하여 주위를 둘러 봤습니다.
JExcelApiExporter는 jxl jar로 압축되어 있습니다. 내 경우 JXL-2.6.10은 JasperReports 4.0.2
// Ejecucion de jasper report por ResultSet
ResultSet rs = rsvp.sql.MyConnection.getConnection().execQuery(m_query);
JRResultSetDataSource resultSetDataSource = new JRResultSetDataSource(rs);
// Parametros del reporte
m_param.put(JRParameter.IS_IGNORE_PAGINATION, Boolean.TRUE);
JasperPrint print = JasperFillManager.fillReport(m_reportFileName, m_param, resultSetDataSource);
// Crea Excel Exporter
//JRExporter exporter = new JRXlsExporter(); // Este es de POI, no funciona bien
JRExporter exporter = new JExcelApiExporter();
// Configura el exporter
exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, outFileName);
exporter.setParameter(JRExporterParameter.JASPER_PRINT, print);
exporter.setParameter(JRXlsExporterParameter.IS_DETECT_CELL_TYPE, Boolean.TRUE);
exporter.setParameter(JRXlsExporterParameter.IGNORE_PAGE_MARGINS, Boolean.TRUE);
exporter.setParameter(JRXlsExporterParameter.IS_WHITE_PAGE_BACKGROUND, Boolean.FALSE);
exporter.setParameter(JRXlsExporterParameter.IS_IGNORE_GRAPHICS, Boolean.TRUE);
exporter.setParameter(JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_COLUMNS, Boolean.TRUE);
exporter.setParameter(JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS, Boolean.TRUE);
// Exporta a Excel
exporter.exportReport();
출처
2013-08-08 16:16:28
acd
에 나는 어떤 기사에서,이 때문에 – n92
예, 당신이 사용하는 옵션이 유효하고 유용 설계하면서 그리드를 사용하지 않는 것으로 나타났습니다 ... 모든 경우에 충분하지는 않습니다. 레이아웃을 수동으로 수정하면 항상 문제를 해결할 수 있습니다 (단, 더 많은 작업이 필요할 수 있습니다). – mdahlman
예, 귀하의 답변, 답장을 보내 주셔서 감사합니다. – n92