0
 医薬品アイテム数総コストコスト/アイテム%総コスト累積%総コスト
 Humalog 10250 $ 25.00 6.7%6.7%
 Novolog 5100 $ 20.00 2.7%9.4%
 アピドラ20600$30.00 16.1%25.5%
 ベロスリン10800$80.00 21.5%47.0%
 Lantus 50 1200 $ 24.00 32.3%79.3%
 レベミール35770$22.00 20.7%100.0%

iReportには、アイテムあたりのコストと総コストのパーセントを正常に計算する詳細バンドがあります。上記のモックアップを参照してください。総コストのパーセントとして、$ F {cost} / $V{sum_all_costs}を使用します。ただし、総コストの累積パーセントに少し問題があります。累積合計を示す変数を取得できます。

Name: RUNNING_SUM
Calculation: Sum
Reset type: Report
Increment type: None
Variable Expression: $F{cost}
Evaluation Time: Now <-- when the variable is used in the detail band

この累積合計を取得して累積パーセンテージを取得する方法について何か考えはありますか?

4

1 に答える 1

1

累計を表示するのは簡単です(質問で示したように)。実行率の問題は、最初に合計を知る必要があることです。ご指摘のとおり、概念的には後で分母を評価する必要があります。しかし、それを指定する方法はありません。

過去にこれを行ったときは、次のようにしました。現在のレポート全体をサブレポートとして扱います。レポートで必要な唯一の変更は、$P{GrandTotal}というパラメーターを追加することです。次に、同じクエリを再利用する新しいレポートを作成します。GrandTotalを計算し、それをサブレポートに渡します。マスターレポートには、実際には表示要素はまったく必要ありません。サブレポートにパラメータとして合計が含まれるようになったので、実行パーセンテージをとして実行できます$F{RUNNING_SUM} / $P{GrandTotal}

注:メインレポートは、実際にはまったく同じクエリを実行する必要はありません。データベース内の合計を計算する変更されたクエリを使用することはおそらく理にかなっています。どういうわけか合計を計算する限り、あなたはすべて設定されています。

于 2012-07-31T21:18:37.020 に答える