簡體   English   中英

IIF和CDate在SSRS表達式中獲得#error?

[英]IIF and CDate getting #error in SSRS expression?

我從Reporting Services中的數據庫中獲取數據,其中包含日期時間,如下所示:20160511,但在某些情況下它只是0.我需要一個表達式來執行以下操作:如果值為0,則放置字符串“never”,否則將數據放入正確的格式。 我試圖在SSRS報告中使用一個表達式,如下所示:

==IIF(Fields!name.Value=0,"never", Cdate(...))

如果數據正確,工作正常,並顯示日期,但在字段中,其中0,我收到此錯誤:#error和一些警告。

如果我只是用這個:

==IIF(Fields!name.Value=0,"never", "something else")

這是真正的分支,它正確地顯示了never和其他字符串。 我已經嘗試了第一個代碼wth是什么日期和其他,但它沒有奏效。

我真的很困惑。 有沒有人知道修復第一個代碼?

您應該能夠在CDATE中放入另一個IIF以消除錯誤:

=IIF(Fields!name.Value = 0,"never", Cdate(IIF(Fields!name.Value=0, "2000-01-01", Fields!Date.Value)) )

將日期轉換為varchar格式,您的公式將按預期工作。 您可以使用格式 功能 例如,如果您想要以mm / dd / yyyy輸出,那么您的表達式將如下所示,

==IIF(Fields!name.Value=0,"never", Format(Fields!Date.Value,"MM/dd/yyyy"))

我希望這有幫助。 干杯!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM