[英]How do I set the visibility of a text box in SSRS using an expression?
我有一個計算列的小計字段,我想在我的報告尚未運行時隱藏它,因為在沒有數據的日子里,它在報告中顯示為NaN
。
我嘗試了兩種方法,但都沒有奏效,我相信它幾乎是正確的。 我只是不知道表達式有什么問題。
如果我的數據集沒有行,我嘗試隱藏。
=IIf((CountRows("ScannerStatisticsData")=0),False,True)
我也試着做一個計算
=iif((fields!Scans.Value / fields!numberOfCases.Value) = 0, False, True)
我還嘗試在計算中的一列上檢查 isnothing
=iif(IsNothing(fields!Scans.Value), False, True)
我究竟做錯了什么?
我嘗試了您提供的示例,唯一的區別是您切換了 True 和 False 值,正如@bdparrish
指出的那樣。 這是一個根據數據集中存在的行數使 SSRS Texbox 可見或隱藏的工作示例。 此示例使用SSRS 2008 R2
。
分步過程: SSRS 2008 R2
在此示例中,報表有一個名為Items
的數據集,並有一個顯示行數的文本框。 它還有另一個文本框,僅當數據集 Items 有行時才可見。
右鍵單擊應該基於表達式可見/隱藏的文本框和 select Text Box Properties...
請參閱屏幕截圖# 1 。
在“ Text Box Properties
對話框中,單擊左側部分的“ Visibility
”。 參考截圖# 2 。
Select Show or hide based on an epxression
。
單擊表達式按鈕fx
。
輸入表達式=IIf(CountRows("Items") = 0, True, False)
。 請注意,此表達式是隱藏文本框(隱藏)。
單擊確定兩次關閉對話框。
屏幕截圖# 3顯示了 SQL 服務器表dbo.Items
中的數據,它是報告數據集Items
的源。 該表包含3 行。 屏幕截圖 # 4顯示了針對數據執行的示例報告。
屏幕截圖 # 5顯示 SQL 服務器表dbo.Items
中的數據,它是報告數據集Items
的源。 該表不包含任何數據。 屏幕截圖 # 6顯示了針對數據執行的示例報告。
希望有幫助。
截圖#1:
截圖#2:
截圖#3:
截圖#4:
截圖#5:
截圖#6:
=IIf((CountRows("ScannerStatisticsData")=0),False,True)
應該替換為
=IIf((CountRows("ScannerStatisticsData")=0),True,False)
因為可見性表達式設置了隱藏值。
這沒有用
=IIf((CountRows("ScannerStatisticsData") = 0),False,True)
但這確實如此,我無法解釋為什么
=IIf((CountRows("ScannerStatisticsData") < 1),False,True)
猜測 SSRS 不喜歡相等的比較。
而不是這個
=IIf((CountRows("ScannerStatisticsData")=0),False,True)
當你想隱藏時只寫表達式
CountRows("ScannerStatisticsData")=0
或更改真假位置的順序如下
=IIf((CountRows("ScannerStatisticsData")=0),True,False)
因為可見性表達式設置了隱藏值。 您可以在文本區域上方找到
" Set expression for: Hidden "
文本框的可見性取決於隱藏值
根據下面的示例,如果內部條件滿足,則文本框隱藏功能將為真,否則如果條件失敗,則文本框隱藏功能將為假
=IIf((CountRows("ScannerStatisticsData") = 0), True, False)
Twood,可見性表達式是您編寫的關於您希望“可見性”如何表現的表達式。 所以,如果你想隱藏或顯示文本框,你想這樣寫:
=IIf((CountRows("ScannerStatisticsData")=0),True,False)
這意味着,如果數據集為 0,則您要隱藏文本框。
rdl文件內容:
<Visibility><Hidden>=Parameters!casetype.Value=300</Hidden></Visibility>
因此,如果您的表達式為真,文本框將隱藏。
切換你的虛假和真實回報? 我認為如果您將它們作為 function 放在可見區域中,那么 false 會顯示它,而 true 不會顯示它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.