我正在使用Jasper Reports导出到Excel,我想知道是否可以导出带分组的电子表格。
我的意思是,在jasper中创建一个已经分组的数据报告,这样当我在excel上打开它时,我可以使用+/-按钮展开/折叠它们。
答案 0 :(得分:3)
是的,你可以在net.sf.jasperreports.export.xls.row.outline.level.{n}
财产的帮助下完成。
有关导出到Excel功能的信息为here。
您可以在*$jasperreports_folder$\demo\samples\xlsfeatures*
文件夹中查看JasperReports包中的示例。
样本:
<group name="citygroup">
<groupExpression><![CDATA[$F{city}]]></groupExpression>
<groupHeader>
<band height="20">
<textField>
<reportElement x="0" y="0" width="100" height="20"/>
<textElement/>
<textFieldExpression><![CDATA["City: " + $F{city}]]></textFieldExpression>
</textField>
</band>
</groupHeader>
<groupFooter>
<band height="21">
<textField>
<reportElement x="0" y="1" width="100" height="20">
<!-- Outline row group ends here-->
<property name="net.sf.jasperreports.export.xls.row.outline.level.1" value="End"/>
</reportElement>
<textElement/>
<textFieldExpression><![CDATA["Total: " + $V{citygroup_COUNT}]]></textFieldExpression>
</textField>
</band>
</groupFooter>
</group>
<detail>
<band height="20" splitType="Stretch">
<textField>
<reportElement x="0" y="0" width="100" height="20">
<!-- Outline row group starts here-->
<property name="net.sf.jasperreports.export.xls.row.outline.level.1" value="Body"/>
</reportElement>
<textElement/>
<textFieldExpression><![CDATA[$F{id}]]></textFieldExpression>
</textField>
<textField>
<reportElement x="100" y="0" width="100" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$F{name}]]></textFieldExpression>
</textField>
<textField>
<reportElement x="200" y="0" width="100" height="20"/>
<textElement/>
<textFieldExpression><![CDATA[$F{address}]]></textFieldExpression>
</textField>
</band>
</detail>
此示例在 iReport 4.1.3版本 中正常工作(通过预览功能导出到 xls ),但 < em> 4.1.2 版本。这可能是 4.1.3 版本的新功能(请参阅release notes)。