如何删除Jasper Report中列表项之间的空格

时间:2015-11-04 09:59:20

标签: jasper-reports

jasper report result

我发现问题在于此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"/>

它不起作用。

1 个答案:

答案 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对象

上访问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执行