0

我有一個SSRS報告,我應該有條件地格式化一列紅色/綠色,取決於表達式是+/- 5%(較少是好的,所以較少是綠色的)。我還需要讓整個報告具有交替行突出顯示。我可以讓這些函數正常工作,直到我拋出一些NULL處理。SSRS條件格式化列,交替行突出顯示和NULL處理

=Switch 
(
IsNothing(Sum(Fields!August2015.Value)),IIf(RowNumber(Nothing) Mod 2 = 0, "#d9d9d9", "Transparent"), 
(Fields!August2015.Value-Fields!CorporateAvg.Value)/Fields!CorporateAvg.Value >= .05, "Pink", 
(Fields!August2015.Value-Fields!CorporateAvg.Value)/Fields!CorporateAvg.Value <= -.05, "LightGreen", 
(Fields!August2015.Value-Fields!CorporateAvg.Value)/Fields!CorporateAvg.Value > -.05 And 
(Fields!August2015.Value-Fields!CorporateAvg.Value)/Fields!CorporateAvg.Value < .05, IIf(RowNumber(Nothing) Mod 2 = 0, "#d9d9d9", "Transparent") 
) 

它看起來像問題是,一旦事情是綠色或紅色的交替行突出復位和投行的其餘部分關閉。這裏有一個例子:

Example of issue

enter image description here

回答

0

我相信這個問題是周圍的部分

IIf(RowNumber(Nothing) Mod 2 = 0, "#d9d9d9", "Transparent") 

由於沒有範圍已設定當行計數重置目前尚不清楚零。你冷總是看到這個ROWNUMBER值是臨時添加第二個表達的細胞只顯示​​值什麼

您是否嘗試過使用CountDistinctRunningValue代替(假設你有每行的唯一值)。例如,替換上面

IIf(RunningValue(CountDistinct(Fields!Serial.Value), Sum, "DataSet1") mod 2), "#d9d9d9", "Transparent") 

這然後根據您正在閱讀的數據集和結果的排序順序,並不僅僅是因爲他們出現在報告本身的行的順序指出部分。

+0

非常感謝這個解決方案。我在執行時遇到了一個錯誤: 重載解析失敗,因爲沒有可訪問的「IIf」接受這個數量的參數。 –

+0

什麼是錯誤? – Jonnus

+0

對不起,我點擊回車沒有意識到它會發表我的評論。我上面編輯了我的評論。 –