sql - SSRS 2008 报告中除以零/空的解决方法

标签 sql reporting-services ssrs-2008

我有一个字段的报告,其值为表达式:

Fields!TotalPrice.Value/Fields!TotalSlots.Value

虽然有时 TotalSlots 是空白的,因此我得到的除以零运行时错误。所以我把表达式改成这样:
=IIF(Fields!TotalSlots.Value > 0, Fields!TotalPrice.Value/Fields!TotalSlots.Value,"unknown")

但我仍然得到除以零错误。我如何解决这个零除数问题。

最佳答案

杰米 F 的回答是正确的。作为提示,您可以在报告代码中添加一个函数,以便在多个单元格中更容易实现除法,例如

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 

然后,您可以像这样在单元格中调用它:
=Code.Divider(Fields!FieldA.Value, Fields!FieldB.Value)

关于sql - SSRS 2008 报告中除以零/空的解决方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10432714/

相关文章:

sql - 数据库计算列未在 EF 4.1 中生成

sql - 为什么我的 "INSERT INTO"语句不起作用?

syntax - 正确需要嵌套 IIF 或 SWITCH 语句语法

reporting-services - 基于参数选择的 SSRS 隐藏列

reporting-services - 为具有不同数据库的 2 个或更多系统使用报告

reporting-services - 如何从SSRS中的字符串获取特定值

reporting-services - MSRS 的大型报告

sql - 四舍五入除法的商?

php - 在 php 中连接 mysql 列值

asp.net - 如何将自定义 CSS 应用于 SSRS 报告