我的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