0

サブレポート(フッター)にパラメータを使いたいです。

パラメータを宣言し、それをサブレポートでのみ使用する簡単な方法はありますか?

私はすでに実用的なソリューションを持っていますが、次のことを行う必要があります。

  • メイン レポートでパラメータを宣言する
  • メイン レポートのパラメータをサブ レポート パラメータとして宣言する
  • サブレポートでパラメータを宣言して、最終的に使用できるようにする

iReport を使用せずに、xml ファイルを直接操作しています。

4

2 に答える 2

0

パラメーターは考えられるあらゆるクラスのものになる可能性があるため、いつでもパラメーターを他のクラスにラップできます。たとえば、Java では、 Map. この方法では、サブ レポートのパラメーターを 1 つだけ宣言し、ラッピング クラスの適切なゲッターを介してマップ内の各サブ レポート パラメーターにアクセスする必要があります。

ジェネリックの例として、次のHashMapように宣言します

<parameter name="subreportParameters" class="java.util.HashMap" isForPrompting="false"/>

そして、このように使用します

<![CDATA[$P{subreportParameters}.get("YOUR_PARAMETER_KEY") ]]>

パラメーターが 1 つしかないことの欠点は、サブレポートの読みやすさが低下することです。これは、フッターなどの小さなサブ レポートでは許容できるトレードオフかもしれません。

于 2016-07-21T13:09:44.297 に答える
0

基本的に、できません。それは不可能。

于 2013-04-03T09:42:45.533 に答える