Мой отчет 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
Я получаю эту ошибку:
Выражение Value для textrun
‘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