2011-07-05 8 views
3

私はiReportは中に複数のグループを作成するレポート、およびデータはグループごとmanner.For例:に表示されるはずです: まずグループ1のデータは、その後、完全に印刷されなければならない、複数のグループが


グループ1:


モジュールデータ この後、私はグループ2のデータを印刷したい完全

グループ2:


カテゴリーデータ

私は、結果セットのデータソースを使用しています。

誰か助けてもらえますか?

答えて

2

iReportのグループがすべてのデータをまとめて保存しない場合は、サブレポートを使用します。 Jasperがサブレポートを取得すると、サブレポート全体が実行され、レポート全体にすべてが格納されます。 - グループ1 グループ1つの最初のレコード グループ1番目のレコード グループ1つの3番目のレコード ... グループ1の最後のレコード サブレポート2 - グループ2 グループ2の最初のレコード

サブレポート1:あなたのような何かを持っている可能性があり グループ2番目のレコード グループ2 3番目のレコード ... グループ2 3番目のレコード

3

ジャスパーは、限り、あなたのクエリ結果が正しく注文されると、このように正確に動作します報告します。

たとえば、「MY_GROUP」というフィールドでグループ化していて、値が「GROUP A」と「GROUP B」であるとします。レポートでは、 "MY_GROUP"フィールドのグループを作成します。クエリで、ORDER BY句の最初のフィールドにMY_GROUPがあることを確認します。また、iReportsで、レポートクエリの並べ替えオプションセクションの最初のフィールドとして "MY_GROUP"フィールドを追加することでこれを実行できます。

今、あなたはあなたのグループが追加されていることと、あなたの結果は次のように出てくる適切に発注されています

ヘッダー - GROUP A 詳細 - GROUP A フッター - GROUP A ヘッダー - GROUP B 詳細 - GROUP B フッター - GROUP B

まさにあなたが望む通りです。私の推測では、クエリ結果を正しく注文していないということです。これにより、グループA、グループBなどの複数のグループ化が散在することになります。

1

それはTomと全く同じです。ジャスパー・レポート・グループは、照会から取り出されたデータを順序付けしません。順序はそのままです。

グループ単位で情報を表示するには、ORDER BYをクエリに追加して、レポートが受け取る行がすでに順序付けされている必要があります。