2014-02-10 113 views
7

我想總結只有小組HourTarget總數。如何計算小組總數?

  7:00  8:00 HourTarget  
Line 1 2715  1008  3224 
    A  2307  1008  3224 
    B  408  0  3224 
Line 2 2308  2432  2656 
    A  2308  2432  2656 
Line 3 2318  1622  2800 
    A  345  1258  2800 
    B  762  0  2800 
    C  1211  364  2800 

我試圖實現8680由於總和的HourTarget。但是我得到了17504.這是因爲數據庫表中的HourTarget是在此行上運行的每個產品的記錄,但目標與行而不是產品有關。我怎樣才能總計總計?

像這樣的東西是不工作:

=Sum(Max(Fields!HourTarget.Value)) 
+0

這是特別是SSRS 2008而不是2008R2? –

+0

是2008R2,抱歉讓人困惑 – Whistler

回答

14

由於您使用的SSRS 2008 R2,您可以使用與在某個版本中添加聚合功能的聚合。

你是在正確的軌道上;您只需要爲您的表達添加範圍值。

我使用一個版本的數據,並且構建了一個簡單的表矩陣:我創建了一個名爲

enter image description here

​​

注意。

要獲得MaxHourTargetSum,使用表達式:

=Sum(Max(Fields!HourTarget.Value, "Line")) 

這工作了Max每個組,然後採取這些的Sum

現在我們有您所需的值:

enter image description here

此前SSRS 2008 R2有沒有簡單的方法來做到這一點;通常可以在DataSet中添加一個額外的列,並在報告中顯示預先彙總的值。

+0

它工作得很好,謝謝。我如何使用HourTarget的條件格式的總和?當7:00的總和大於或等於HourTarget的總和時,綠色其他的紅色。我試過這個,但我得到的錯誤是它不在組中。 = IIF(Sum(Fields!HourCount.Value)> = Sum(Max(Fields!HourTarget.Value,「LineID」)),「LimeGreen」,「Red」) – Whistler

+0

好吧,我知道了。如果有人需要它,我使用了:ReportItems![文本框名稱]。值 – Whistler

+0

很酷,剛剛輸入回覆。在表頭的水平上,你的第一個方法應該沒問題(而且在快速測試中似乎對我有用),但你的方法也是一個很好的方法,尤其是如果它適合你的話! –