2012-12-12 29 views
0

我有一个使用iReport在jasperreports 2.0.4中创建的报表。我有两个子报表。这两个子报表共享相同的jrxml。我将jrxml作为子报表的报表表达式传递给参数。我有这个参数代码Jasperreports - 两个子报表,相同的jrxml,相同的pojo数据源

<parameter name="SUB_EXP" class="net.sf.jasperreports.engine.JasperReport"/> 

一切工作正常。问题是与两个子报表数据源

这些报表的数据源来自的POJO作为参数传递

<parameter name="SUB_SRC" class="com.mycompany.myapplication.core.persistence.MyListDataSource"/> 

这里有两个子报表子报表JRXML代码SAME列表

<subreport> 
    <reportElement positionType="Float" x="0" y="0" width="570" height="1"/> 
    <dataSourceExpression> 
     <![CDATA[$P{SUB_SRC}]]> 
    </dataSourceExpression> 
    <subreportExpression class="net.sf.jasperreports.engine.JasperReport"> 
     <![CDATA[$P{SUB_EXP}]]> 
    </subreportExpression> 
</subreport> 

第二

<subreport> 
    <reportElement positionType="Float" x="0" y="1" width="570" height="1"/> 
    <dataSourceExpression> 
     <![CDATA[$P{SUB_SRC}]]> 
    </dataSourceExpression> 
    <subreportExpression class="net.sf.jasperreports.engine.JasperReport">    
     <![CDATA[$P{SUB_EXP}]]> 
    </subreportExpression> 
</subreport> 

你看,这两个子报表具有相同的代码。

奇怪的是,这两个子报表显示,但第一个子报表的数据没有完成,那些缺失的数据在第二个子报表中。预期的行为是,这两个子报表应该有两个相同的完整数据。

我在这里面临某种并发问题吗?如果有人可以验证...

回答

相关问题