我正在尝试生成包含表格的报告。这些是jrxml的重要部分:
<jasperReport
<subDataset name="Table Dataset 1">
<field name="field1" class="java.lang.String"/>
</subDataset>
<summary>
<jr:table>
<datasetRun subDataset="Table Dataset 1">
<dataSourceExpression>
<![CDATA[$P{REPORT_DATA_SOURCE}]]>
</dataSourceExpression>
</datasetRun>
<jr:column width="90">
<jr:columnHeader>...</jr:columnHeader>
<jr:detailCell height="20">
<textField>
<textFieldExpression class="java.lang.String">
<![CDATA[$F{territory}]]>
</textFieldExpression>
</textField>
</jr:detailCell>
</jr:column>
<jr:table>
</summary>
</jasperReport>
我传递给报告的数据源类型是JRBeanArrayDataSource,这似乎没问题,因为数据出现在报告中(如果我在主表中使用$ F {field1} - 在表外)。 / p>
你看到我使用表组件的方式有什么问题吗? 我没有看到任何错误......但是没有显示表格......只有一条水平线而不是表格。
答案 0 :(得分:7)
我遇到了同样的问题并在此处找到了解决方案 https://web.archive.org/web/20111130110022/http://thilosdevblog.wordpress.com/2011/03/27/beans-in-jasperreports4/
表数据源必须是这样的:
<datasetRun subDataset="TableDataset">
<datasetParameter name="REPORT_DATA_SOURCE">
<datasetParameterExpression><![CDATA[$P{REPORT_DATA_SOURCE}]]></datasetParameterExpression>
</datasetParameter>
</datasetRun>
想知道为什么这种东西不在jasper / ireport常见问题中!
答案 1 :(得分:0)
好吧,我不能发表评论,不能投票,但我已经测试过,可以确认@Flo的答案是否正常。
编辑:缺少第一行。了解如何修复它:Jasper report missing first row和JasperReports Tutorial: Missing Record Bug