2013-11-20 123 views
0

在現有的SSRS 2008 R2報告中,對於每個其他背景顏色,我都有以下「IIF(RowNumber(Nothing)Mod 2 = 0,」Gainsboro「,」White「))細節線行。 基本上一條細節線是白色的,下一條細節線是淡綠色。SSRS 2008 R2使用兩個iif語句

現在用戶希望每個其他明細行在報表服務器上顯示時都保持白色和淺綠色。但是,如果要將報告導出爲ex​​cel,則需要 用戶希望所有導出爲ex​​cel的行完全變白。

用戶將完成以下步驟: 用戶將從'Excel Export_Hide Headers'下拉列表中選擇'隱藏'。 用戶將下一步選擇查看按鈕,然後將報告導出爲ex​​cel。 用戶將選擇導出爲ex​​cel選項。 **當報告假設導出爲ex​​cel時,用戶基本上會隱藏標題行。 。 正在隱藏標題行時,正在使用以下邏輯:「iif(參數!ExcelToolbar.Value = 0,false,true)」。你可以告訴我如何將「iif(Parameters!ExcelToolbar.Value = 0,false,true)」與「IIF(RowNumber(Nothing)Mod 2 = 0,」Gainsboro「,」White 「)」聲明?

這是嵌套的iif語句嗎?如果是這樣,你能告訴我如何設置適用的嵌套iif語句?如果這不是解決方案,你會用代碼告訴我,向我解釋,和/或指向我的網址,這將解決我的問題?

回答

2

嵌套if語句應該工作,或者您可以編寫一個函數,在報表的代碼部分中使用布爾值並調用該函數。

對於嵌套的iif命令,應該是這樣的,檢查決定使用Gainsboro或白色基於工具欄設置。

IIF(RowNumber(Nothing) Mod 2 = 0, IIF(Parameters!ExcelToolbar.Value = 0,"Gainsboro","White"), "White") 

此外,還建議使用switch敘述,如果你打算窩3個或更多(在決策功能部分提到):http://msdn.microsoft.com/en-us/library/ms157328.aspx

+0

我沒有用一個switch語句。那麼你能告訴我如何在這種情況下使用switch語句嗎? – user3009532

+0

不確定開關在這裏是最好的主意,但它會是這樣的。這是假設您每次Exceltoolbar.value爲0時都需要白色。'= Switch(參數!ExcelToolbar.Value = 0,「White」,RowNumber(Nothing)Mod 2 = 0,「Gainsboro」,True,「White」) ' – Glen