iReport xls导出排除细节带?
我目前正在使用iReports 5.1.0。
我一直在尝试使用格式导出属性来修改基于导出的报告。
属性类似于…
<property name="net.sf.jasperreports.export.xls.exclude.origin.band.phase" value="groupHeader"/> <property name="net.sf.jasperreports.export.xls.exclude.origin.group.phase" value="Phase"/>
我想出了如何根据运行时的导出来处理报表中的每个波段。 但是,我无法弄清楚如何用细节乐队做到这一点。
如果我有一个细节乐队,我可以这样做…
<property name="net.sf.jasperreports.export.xls.exclude.origin.band.detail1" value="detail"/>
不过,我有3个不同的细节带。 输出到excel时,我需要排除第一个细节带。 然后,我需要只有第一个细节带2显示。 我查看了所有的文档,似乎无法find任何有关上述方法实现此信息。
我知道我可以在expression时使用打印,但是如果可能的话,我更喜欢这样做。
这是我的报告属性…
<property name="ireport.zoom" value="1.0"/> <property name="ireport.x" value="0"/> <property name="ireport.y" value="0"/> <property name="net.sf.jasperreports.export.xls.detect.cell.type" value="true"/> <property name="net.sf.jasperreports.export.xls.freeze.row" value="0"/> <property name="net.sf.jasperreports.export.xls.freeze.column" value="0"/> <property name="net.sf.jasperreports.export.xls.remove.empty.space.between.columns" value="true"/> <property name="net.sf.jasperreports.export.xls.remove.empty.space.between.rows" value="true"/> <property name="net.sf.jasperreports.export.xls.exclude.origin.band.title" value="title"/> <property name="net.sf.jasperreports.export.xls.exclude.origin.band.group" value="groupHeader"/> <property name="net.sf.jasperreports.export.xls.exclude.origin.group.group" value="Group"/> <property name="net.sf.jasperreports.export.xls.exclude.origin.band.phase" value="groupHeader"/> <property name="net.sf.jasperreports.export.xls.exclude.origin.group.phase" value="Phase"/> <property name="net.sf.jasperreports.export.xls.exclude.origin.band.detail1" value="detail"/> <property name="net.sf.jasperreports.export.xls.exclude.origin.band.footer" value="pageFooter"/> <property name="net.sf.jasperreports.export.xls.white.page.background" value="true"/> <property name="net.sf.jasperreports.export.xls.image.border.fix.enabled" value="true"/> <property name="net.sf.jasperreports.export.xls.column.width.ratio" value="1.10f"/> <property name="net.sf.jasperreports.export.xls.ignore.graphics" value="false"/> <property name="ireport.database" value="jdbc/DriverB"/> <property name="ireport.displayTitle" value="CDP Follow Up"/> <property name="ireport.category" value="test"/> <property name="ireport.defaultExport" value="pdf"/>
我的问题是,如何有条件地打印特定的细节带基于导出types,而不是在细节带expression时使用打印?
这个语法是:
net.sf.jasperreports.export.{format}.exclude.origin.{suffix}.{arbitrary_name}
在这里阅读更多的细节: JasperReports – configuration参考
具体的例子是:
net.sf.jasperreports.export.xls.exclude.origin.band.1=pageHeader net.sf.jasperreports.export.xls.exclude.origin.band.2=detail1