需要从字段表达式中的 SSRS SSDT 报告计算中排除零值 window

Need to exclude zero values from SSRS SSDT Report calculations in Field expression window

我的生产力计算为 TotalMinutes/(TotalHours*60) 我的一些 TotalHours 值=0,我需要将它们排除在计算之外。

如何在字段表达式中写window?

我现在的表情是 (我也在该字段中将零设置为“99”值):

=IIf(Fields!TotalHours.Value=0,99,
 Sum(Fields!TotalMinutes.Value/(Fields!TotalHours.Value*60)))

感谢您的帮助

这是未经测试的,但应该可以工作...

问题是 IIF 将对两个表达式求值,即使从未使用过一个表达式,因此为了避免被零除,我们需要将可能的零换成 1。这不会影响结果,因为它永远不会用作最终输出。

=SUM(
IIF(Fields!TotalHours.Value=0,99
    , IIF(Fields!TotalHours.Value=0,0, Fields!TotalMinutes.Value) 
        /  IIF(Fields!TotalHours.Value=0, 1, Fields!TotalHours.Value * 60)
    )
)

所以这里发生的是,如果 TotalHours 为零,我们在外部 IIF 的 False 部分执行 0/1 只是为了满足 IIF 语句(它永远不会被实际使用)