我们的某个报告遇到了问题。在我们tablixes的一个文本框具有下列表达式:SSRS 2008 - 按零场景处理除法
=Iif(Fields!SomeField.Value = 0, 0, Fields!SomeOtherField.Value/Fields!SomeField.Value)
这应该是不言自明。如果“SomeField”为零,请将文本框的值设置为零,否则将其设置为“SomeOtherValue/SomeValue”。
我们难以理解的是,即使上面的表达式应该阻止这种情况发生,报告仍然会抛出运行时异常“试图除以零”。
我们摆弄表达一点只是为了确保零检查工作,并
=Iif(Fields!SomeField.Value = 0, "Yes", "No")
精美的作品。数据实际上为零的情况导致文本框显示“是”,反之亦然。所以检查工作正常。
我的直觉是,报告渲染引擎在运行时抛出异常,因为它“看起来”好像我们要除以零,但实际上,我们不是。
有没有人遇到过同样的问题?如果是这样,你做了什么来让它工作?
太棒了!我用这个建议来回答我的问题:http:// stackoverflow。com/questions/43662727/ssrs-expression-error-calculate-variable-shows-error-when-divide-by-zero/43666171#43666171 – Aline 2017-04-27 19:17:52