0

iReportを使用してjasperreports2.0.4で作成されたレポートがあります。2つのサブレポートがあります。これらの2つのサブレポートは同じjrxmlを共有します。パラメータでサブレポートのレポート式としてjrxmlを渡します。私はこのパラメータのためにこのコードを持っています

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

すべてが正常に動作します。問題は、2つのサブレポートデータソースにあります

これらのサブレポートのデータソースは、パラメーターとして渡されたPOJOの同じリストから取得されます

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

2つのサブレポートのサブレポートjrxmlコードは次のとおりです

1位

<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>

2位

<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>

ご覧のとおり、2つのサブレポートのコードは同じです。

奇妙なことに、2つのサブレポートが表示されますが、最初のサブレポートのデータは完全ではなく、欠落しているデータは2番目のサブレポートにあります。予想される動作は、2つのサブレポートが2つの同じ完全なデータである必要があるということです。

ここで、ある種の並行性の問題に直面していますか?誰かが確認できたら...

4

1 に答える 1

0

ここで推測するだけですが、最初のサブレポート全体しか表示されていない可能性があります。巻き戻さずに同じデータソースを2回使用することはできません 。JasperReports/iReportで同じデータソースを2回使用する方法を参照してください。

于 2012-12-19T13:46:44.780 に答える