簡體   English   中英

在SSRS表達式中的嵌套iif中刪除NaN

[英]Remove NaN in Nested iif in SSRS expression

SQL-SSRS的新功能

如何在以下代碼中添加功能,以將返回的NaN值更改為0或空白? 我認為正在發生的情況是“同意”與“不同意”之和= 0我得到了這個Nan。 我認為,如果我不處理“同意”和“不同意”類別,這對我來說會更容易。 同樣,這是SQL編程的新功能。 任何幫助將不勝感激。

=(Sum(iif(Fields!Response.Value = "Agreed",Fields!Days.Value,0)) + Sum(iif(Fields!Response.Value = "Disagreed",Fields!Days.Value,0)))/(Sum(iif(Fields!Response.Value = "Agreed",Fields!Fq.Value,0)) + Sum(iif(Fields!Response.Value = "Disagreed",Fields!Fq.Value,0)))

嘗試以下類似的方法,

=Replace((Sum(IIF(Fields!Response.Value = "Agreed",Fields!Days.Value,0)) + 
Sum(IIF(Fields!Response.Value = "Disagreed",Fields!Days.Value,0))),"NaN","0")
/ Replace((Sum(IIF(Fields!Response.Value = "Agreed",Fields!Fq.Value,0)) 
+ Sum(IIF(Fields!Response.Value = "Disagreed",Fields!Fq.Value,0))),"NaN","0")

另外,看看這個

您應該處理表達式中的DIV 0問題,而不是替換從零除返回的文本:

=IIF(
    SUM(IIF(Fields!Response.Value = "Agreed" OR Fields!Response.Value = "Disagreed", Fields!Fq.Value, 0)) = 0, 0, 
        SUM(IIF(Fields!Response.Value = "Agreed" OR Fields!Response.Value = "Disagreed", Fields!Days.Value, 0)))
/IIF(
    SUM(IIF(Fields!Response.Value = "Agreed" OR Fields!Response.Value = "Disagreed", Fields!Fq.Value, 0)) = 0, 1, 
        SUM(IIF(Fields!Response.Value = "Agreed" OR Fields!Response.Value = "Disagreed", Fields!Fq.Value, 0)))

如果SUM 為零 ,則計算為0/1,否則為“ 同意”或“ 不同意”SUM(天)/ SUM(Fq)

而不是兩個和,只需在一個中使用OR。

Public Function Divider (ByVal Dividend As Double, ByVal Divisor As Double)
If IsNothing(Divisor) Or Divisor = 0
  Return 0
Else
  Return Dividend/Divisor
End If
End Function 

此功能使您可以編寫自定義代碼來解決Nan的所有問題。 這可以由下面稱為

=Code.Divider(Fields!FieldA.Value, Fields!FieldB.Value)

您的代碼如下

=Code.Divider(((Sum(iif(Fields!Response.Value = "Agreed",Fields!Days.Value,0)) + Sum(iif(Fields!Response.Value = "Disagreed",Fields!Days.Value,0))), ((Sum(iif(Fields!Response.Value = "Agreed",Fields!Fq.Value,0)) + Sum(iif(Fields!Response.Value = "Disagreed",Fields!Fq.Value,0)))))

暫無
暫無

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

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