我发现问题在于此PROPERTY_FRAMES_AS_NESTED_TABLES属性。如果我在JRHtmlExporter中将其设置为true,则空格会消失,但它也会以非常糟糕的方式影响所有报表。所以我试着把它放在jrxml文件中,但没有任何改变。
<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="...">
<property name="net.sf.jasperreports.export.html.frames.as.nested.tables" value="true"/>
更新
我的主报告包含一些子报告,包括必须包含FRAMES_AS_NESTED_TABLES true
的my-list.jrxml,但其余报告必须保留false
。
所以我设置htmlExporter.setParameter(JRHtmlExporterParameter.FRAMES_AS_NESTED_TABLES, Boolean.FALSE);
(这是主要报告),
但在my-list.jrxml
我写了<property name="net.sf.jasperreports.export.html.frames.as.nested.tables" value="true"/>
它不起作用。
答案 0 :(得分:0)
令我感到惊讶的是,此属性应默认到true
Jasper report API,因此设置true
不会改变它!
也许你改变了别的什么?,你还有另一个问题!
结帐也是这个属性:
net.sf.jasperreports.export.html.remove.emtpy.space.between.rows
PS。 emtpy
是jaser报道中一个着名的错字!它不是我的; )ds。
编辑:用户发现他在导出过程中设置为false,因此他在导出过程中放置的属性将被覆盖..所以我怎样才能设置它true
我需要,其余的时间false
,而不更改其他报告?
您可以在JasperReport
对象
所以在你完成编译之前你可以做这样的事情
String myProperty = jasperReport.getProperty("my.property");
if (myProperty!=null && myProperty.equals("specialValue")){
//What ever you like don't set it false for example ....
}
现在只需设置jrxml。
<property name="my.property" value="specialValue"/>
当您希望if
执行