あなたのコメントに基づいて、2 つのことのいずれかが起こっているようです。
Detail
1)テンプレート ファイルのバンドにサブレポートが定義されている。
この場合、機能しません。テンプレート ファイルのDetail
バンドは空である必要があります。これが事実である場合、そこにあるものを無視して、他のすべてを行う可能性が高くなります. 詳細については、カスタム jrxml テンプレートの使用方法を確認してください。
2)dynamicReportBuilder.addConcatenatedReport(subreport);
自分が思っていることをしない。
このメソッドは、最初のレポートの最後に 2 番目のレポートを追加します。それをバッチと考えてください。JASPER_PRINT_LIST
Jasper Reports API を直接使用する場合、値をエクスポート パラメータとして設定するのと同じことです。詳細については、HOW-TO Add Concatenated Reportsを参照してください。
Dynamic Jasper は優れたライブラリですが、実際には標準の表形式のレポートでのみ動作するように設計されています。サブレポートを含むいくつかの高度な機能をサポートしていますが、制限がある場合があります。
これまでのところ、サブレポートはグループ ヘッダーとグループ フッターにしか追加できないようです。したがって、あなたの場合、最初に を使用してレポートするグループを追加する必要があるでしょうGroupBuilder
。次に、サブレポートをグループ フッターに追加できます。グループの秘訣は、グループ化する適切なフィールドを選択して、各行が最終的に独自のグループになるようにすることです。
グループの作成方法については、グループのヘッダーとフッターにラベルを追加する方法のコード例を参照してください。
サブレポートをレポートに追加する方法を確認するには、DynamicReportBuilder.addSubreportInGroupFooter()
メソッドを使用できます。この部分の詳細と例については、HOW-TO Add Subreports (fast way) を参照してください。
もう 1 つのオプションは、この特定のレポートに Dynamic Jasper を使用せず、jrxml ファイルと Jasper Report の API を使用して自分で行うことです。セットアップによっては、簡単になる場合とそうでない場合があります。