2012-07-31 229 views
0
 

Drug  Item Count Total Cost Cost/Item % Total Cost Cumulative % Total Cost 
Humalog   10   250 $25.00   6.7%   6.7% 
Novolog   5   100 $20.00   2.7%   9.4% 
Apidra   20   600 $30.00   16.1%   25.5% 
Velosulin  10   800 $80.00   21.5%   47.0% 
Lantus   50   1200 $24.00   32.3%   79.3% 
Levemir   35   770 $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 

有關如何獲得累積總和並獲得累積百分比的任何想法?

+0

你能說清楚「累計百分比」是什麼意思嗎? – Michael 2012-07-31 18:00:54

+0

在遍歷列表時,每個元素的總數百分比都會貢獻累積百分比。因此,上述Humalog爲6.7%,Novolog爲2.7%。在Novolog一行中,總數的累積百分比現在是9.4%。 – Lisa 2012-07-31 18:07:30

+0

我也沒有正確理解這個問題。你能告訴我們你有什麼和你需要達到什麼嗎? – precose 2012-07-31 19:12:02

回答

1

顯示運行總數很簡單(正如您在問題中演示的那樣)。運行百分比的問題是您首先需要知道總數。正如你所指出的那樣,從概念上講,你需要稍後評估分母。但是沒有辦法指定。

當我在過去做過這樣的事情時,我是這樣做的:把你當前的整個報告當作一個子報告。報告中唯一需要的變化是添加一個名爲$ P {GrandTotal}的參數。然後創建一個全新的報告,重新使用相同的查詢。它計算GrandTotal並將其傳遞給子報表。主報告根本不需要任何顯示元素。現在子報表的總數作爲參數,您可以將您的運行百分比設爲$F{RUNNING_SUM}/$P{GrandTotal}

注意:主報告並不需要運行完全相同的查詢。使用修改的查詢來計算數據庫中的總數可能是有意義的。只要它計算出你總共設置的總數。

+0

謝謝,馬特!我會給你一個鏡頭。 – Lisa 2012-08-01 12:10:00