JasperReports:合并导出到xlsx的单元格

时间:2012-03-01 05:59:59

标签: jasper-reports jasperserver

我有一个带有文本字段的报告,这个文本可以很长并且被包装。当我从.xls将报告导出到JasperReports时,可以使用此单元格 - 我在一个单元格中获取包装文本。但是当我导出到.xlsx时,JR会在包含文本的行之后添加一行excel,并将包装的单元格与下面的单元格合并。

.xls导入的结果是:

XLS import result

.xlsx导入的结果是:

XLSX import result

我尝试过不同的JR导出选项 - 没有结果(我把这个选项放到报告中,而不是配置文件中,这可能是重要的吗?) JasperServer版本不是最新版本?可能是3.x

3 个答案:

答案 0 :(得分:1)

原因是包装的单元格正在增加其高度以适应文本,而同一行中的其他单元格不会做同样的事情。您应该尝试将Stretch Type设置为Relative to Tallest Object并查看是否有帮助。

至于为什么它发生在xlsx而不是xls上,我不知道。

答案 1 :(得分:0)

我发现扩展整个报告的宽度并将单元格移动到合并发生区域的右侧会为我清理它。合并发生的列在宽度上减少为0,当我再次运行报表时为空。如果你不介意额外的列在那里,因为它们几乎不可见,那么这个解决方案就可以确认了。

您也应该能够使用行来扩展报告的高度,并将该区域留空,但将其他所有内容移到单元格中。

答案 2 :(得分:0)

pt_BR: Aqui,eu resolvi com algumas <property />deexportaçãodo.xlsx e comalteraçãodapropriedade do TextField Stretch With Overflow desmarcada( false)。

en_US:在这里,我解决了一些<property />导出.xlsx并将 TextField 属性Stretch With Overflow更改为false (未选中)。

JRXML: ... <property name="net.sf.jasperreports.print.keep.full.text" value="true"/> <property name="net.sf.jasperreports.export.xls.wrap.text" value="true"/> <property name="net.sf.jasperreports.export.xls.remove.empty.space.between.rows" value="true"/> <property name="net.sf.jasperreports.export.xls.remove.empty.space.between.columns" value="true"/> ...