尝试根据表值从表生成表达式

时间:2019-04-23 17:28:49

标签: expression ssrs-2012 division iif text-comparison

我的SSRS报告创建一个汇总表。我需要根据表中的2条数据进行计算,并将其作为表达式添加到报告底部。我的表达式错误,因为它没有从表中读取数据输出。

我已经跟踪了所有可以找到的错误的示例,但是没有找到解决方法。我是SSRS的新手。我已经通过简单地使用IIf语句返回我要查找的值(没有我需要的其余计算)来测试了该表达式,并且它不返回任何一个值。结果为“ #Error”。我直接从SQL代码复制了查找值,所以我知道比较值中没有错别字。

我的表达式中有这个代码:

=Code.Divide
(IIf(Fields!Results.Value = "BKR3 - Total Overtime Hours", Fields!Results.Value, 0)) , 
(IIf(Fields!Emp_Type.Value = "BKR1 - Total Paid Hours", Fields!Results.Value, 1))

通过另一个stackoverflow问题,我找到了以下代码并将其添加到我的报告中:

Public Function Divide(ByVal dividend as Double, ByVal divisor as Double) As Double
    If IsNothing(divisor) Or divisor = 0 Or IsNothing(dividend) Or dividend=0 THEN
        Return 0
    Else
        Return dividend/divisor
    End If
End Function

我收到此错误:

  

textrun的Value表达式   ‘Textbox3.Paragraphs [0] .TextRuns [0]”包含错误:[BC30455]   未为“公共函数”的参数“除数”指定参数   除(除为双的除数,除为双的除数)。

这是我的输出结果:

*Emp_Type                              Results
*A3-Facility Payroll Hours            28,252.20
*A4-Provider Payroll Hours             1,998.50
*BKR1-Total Paid Hours                30,250.70
*BKR2-Total Worked Hours              27,037.62
*BKR3-Total Overtime Hours               504.20
*BS1-Hospital FTEs                        99.72
*BS2-Clinic FTEs                          23.25

加班%#错误

(非常抱歉,我无法缩进清单!)

我希望这是我的结果:

      Overtime %                               0.18% 

这就是我得到的:

      Overtime %                               #Error

0 个答案:

没有答案