2011-11-09 37 views
0

假設我有以下報告:SQL Server報表服務:如何插入計算的「中間」行

Code, Year, Jan, Febr, March.... December, Total 
ABC 2011 13 883 2828  ....  3000 
ABC 2012 20 888 .... 

XYZ 2011 .... 
XYZ 2012 .... 

我需要插入每個代碼「增量行」每2行(2年)有我的報告

Code, Year, Jan, Febr, March.... December, Total 
ABC 2011 13 883 2828  ....  3000 
ABC 2012 20 888 .... 
Delta  +7 +5 .... 

XYZ 2011 .... 
XYZ 2012 .... 
Delta .... 

如何使用Sql Server Reporting Services執行此操作?

謝謝

回答

0

一種方法來獲得,這是:

  1. 在你內心的行組,可能是詳細信息組插入第二行。
  2. 設置此行的知名度,被隱藏=IIF(Previous(Fields!Code.Value,"RowGroupNameGoesHere") = Fields!Code.Value , false, true) [我知道,多餘的有IIF返回真或假,但它使故障排除更方便,更靈活。]
  3. 使用以前的功能在此細胞行即可像=SUM(Fields.QuantitySold.Value) - Previous(Sum(Fields!QuantitySold.Value),"RowGroupNameGoesHere")

[我假設你是一個表矩陣旋轉,並且您的數據集沒有每個月不同的列這句和前面的項目,東西之間的區別。如果是這樣,則同樣的方法將起作用,但在步驟3的公式中使用適當的字段名稱(不含SUM)。

這將爲報表中的每一行生成一個差異行,但隱藏這些行在匹配元素之間。

+0

你的答案是正確的,但我的另一個問題:如何如果我沒有(每組)每計2年內行?如果我使用上我得到了錯誤的數據... – stighy

+0

調整您的知名度公式隱藏的行或更改你的數學處理這些不同的計數(場!Code.Value,「RowGroupNameGoesHere」)= 2應該給你一個起點。 –