jasper-reports
サブレポートの使用
サーチ…
パラメーター
| パラメータ | 詳細 |
|---|---|
| parametersMapExpression | パラメータ付きのマップ。 不要 |
| サブレポートパラメータ | nameとvalueのペア( subreportParameterExpressionで設定)。 不要です 。サブレポートにはいくつかのパラメータを渡すことができます |
| connectionExpression | データを取得するための接続。 不要 |
| dataSourceExpression | データソースを渡すための式。 不要 |
| サブレポートの式 | サブレポートのパス/ URI、さらにはJasperReportオブジェクト。 不要 |
| returnValue | 名前と値のペア。 不要です 。サブレポートからいくつかの値を戻してマスターレポートバックに戻すことができます |
備考
複雑なレポートを作成するために、サブレポートを使用できます。既存のレポートを再利用することは、サブレポートを使用するもう1つの目標です。
<subreport>要素を使用する場合、<subreport>はマスターレポートの一部として表示されます。subreportExpressionパラメータの値は、 JasperReportsサーバで使用する場合と、 JasperReportsフレームワーク(IDEで使用または使用する一部のAPI)だけで異なります。
JasperReports Serverの場合、次のようになります。
<subreportExpression><![CDATA["repo:subreport.jrxml"]]></subreportExpression>JasperReportsエンジンだけで使用する場合:
<subreportExpression><![CDATA["/somePath/subreport.jasper"]]></subreportExpression>@AndreasDietrichの大きな説明はJasperServerにあります:サブレポートの例外投稿を見つけることができません
いくつかの理由から、サブレポートは、(
<subreport>要素の助けを借りて)マスターレポートから呼び出すことなく、共通のレポートとして使用できます。サブレポートは常にレポートです。
サブレポートに接続を渡す。値をマスターレポートに戻す
これはマスターレポートのスニペットです。 2つのパラメータと接続(たとえば、 jdbc )がサブレポートに渡されています。 1つの値がサブレポートからマスタレポートに返されます。この値( 変数 )は、マスタレポートで使用できます
<subreport>
<reportElement x="0" y="80" width="200" height="100"/>
<subreportParameter name="someSubreportParameter">
<subreportParameterExpression><![CDATA[$P{someMasterReportParamter}]]></subreportParameterExpression>
</subreportParameter>
<subreportParameter name="anotherSubreportParameter">
<subreportParameterExpression><![CDATA["Some text - constant value"]]></subreportParameterExpression>
</subreportParameter>
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
<returnValue subreportVariable="someVariableInSubreport" toVariable="someVariableInMasterReport"/>
<subreportExpression><![CDATA["$P{SUBREPORT_DIR} + "subreport.jasper"]]></subreportExpression>
</subreport>
サブレポートにdatasoureを渡す
これはマスターレポートのスニペットです。データソースは、 net.sf.jasperreports.engine.data.JRBeanCollectionDataSourceコンストラクタの助けを借りてサブレポートに渡されます。
<field name="someFieldWithList" class="java.util.List"/>
<!-- ...... -->
<subreport>
<reportElement x="0" y="0" width="200" height="70"/>
<parametersMapExpression><![CDATA[$P{REPORT_PARAMETERS_MAP}]]></parametersMapExpression>
<dataSourceExpression><![CDATA[net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{someFieldWithList})]]></dataSourceExpression>
<subreportExpression><![CDATA[$P{SUBREPORT_DIR} + "subreport.jasper"]]></subreportExpression>
</subreport>
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow