0
這是我的發言:爲什麼我的iif語句在條件正確的情況下評估爲真?
iif(sum(Fields!myfield1.Value) = 0, 0, sum(Fields!myField2.Value)/sum(Fields!myField1.Value))
有什麼建議?
這是我的發言:爲什麼我的iif語句在條件正確的情況下評估爲真?
iif(sum(Fields!myfield1.Value) = 0, 0, sum(Fields!myField2.Value)/sum(Fields!myField1.Value))
有什麼建議?
有可能是評估爲真。正如其他評論中提到的那樣,無論如何,您將會得到一個錯誤,因爲無論測試結果如何,Iif()都會評估所有參數表達式。
該錯誤可以通過在除數中添加另一個Iif()來避免。
iif(
sum(Fields!myfield1.Value) = 0,
0,
sum(Fields!myField2.Value)/iif(
sum(Fields!myfield1.Value) = 0,
1,
sum(Fields!myField1.Value)
)
)
現在,如果myfield1爲零且不引發錯誤,您將得到零。
(你或許應該顯示爲「N/A」或只是一個空字符串時,除數爲零,雖然)。
你在哪裏把這個IIF語句? – 2010-05-12 19:48:37
@Raj更多:可能是SSRS文本字段或表格單元格。 SSRS使用VBA作爲編程語言。 – 2010-05-12 19:55:13
@OMB小馬:對含糊不清的道歉。我的意思是要查明這是用在SubTotal行還是在Detail行中。 – 2010-05-12 19:57:50