2016-05-12 5 views
0

私はiReport 5.2.0を使用しており、印刷したいレポートが2つあります。 両方のレポートには動的データが含まれており、複数のページで構成できます。ただし、第1レポートのページ数は、第2レポートのページ数と常に等しくなります。前後の条件付き印刷

私の現在の設定では、最初のレポートは常に完全に印刷され、次に2番目のレポートのすべてのページが印刷されます。

しかし、私の要件は、レポートには、次の順序で印刷しなければならないことである。

  • ページレポートの報告書1の1
  • ページ1レポート1
  • の2
  • ページ2
  • レポート2の2ページ
  • レポート1のページ3
  • 報告書2のページ3
  • ...

JasperReportsでこれを実現する方法はありますか?

+0

より良い解決策を提供するために、両方のjrxmlを投稿すると便利です。どちらもjrxmlは同じデータソースを使用していますか? –

+0

@FahadAnjum:データソースは両方のレポートで同じです。彼らは非常に複雑なので、私はjrxmlを投稿しませんでした。また、両方とも独立して動作しています。それは私が設定する必要がある印刷シーケンスです。 – varuog

+0

レポートを入力した後でページを切り替えることができます。あなたがもっと知りたいのであれば私にpingしてください –

答えて

0

レポート1では、X_SQLでXクエリを使用し、レポート2ではY_SQLでYクエリを使用しています。

両方のクエリのカラム数が同じ場合は、両方のクエリを結合するために、X_SQLとY_SQLに対してカラムを追加してください。

SQLで1つの数値列と1つのダミー列を生成する必要があることに注意してください。あなたはSQLで動的に数列を生成することができます。 number_seriesによる2つの新しい列(number_series、 'ダミーdetail1'as)二つの新しいコラム(number_series、と 組合 Y_SQL' ダミーdetail2'as) 順で

X_SQL、SQLのダミー

OUTPUT:

X_SQLカラム、1ダミー Y_SQL列としてnumber_series、 '詳細1'、1 number_seriesとして、number_seriesダミー X_SQL列として '詳細2'、2、ダミー Y_SQL列として '詳細1'、2 number_series限り、 'ダミーとしてdetail2 '

新しいレポートに2つの詳細バンドを追加します。レポートの高さは、1つのディテールバンドの高さ+上下のパディングです。

1詳細バンド=最初のレポートのデザイン
2詳細バンド=第二のレポートのデザイン

あなたjrxmlが複雑すぎる場合Uは、サブレポートを使用することができます。詳細バンドの発現は使用プリントで今

詳細バンド1:$ F {ダミー} .equals( '詳細1') 詳細バンド2:$ F {ダミー} .equals( '詳細2')

注: 1)SQLクエリで注文する必要があります。 2)レポートの高さを適切に選択する必要があります。

まだ問題がある場合は、jrxmlを投稿することをお勧めします。

+0

これは助けられますか? –