2014-03-26 2 views
0

I SSRS에 다음 식 가지고있다 -SSRS 표현 원인이 오류

=IIf(IsNothing(Fields!Hours.Value), 0, Sum(Fields!Hours.Value)/Sum(Fields!ReportingHours.Value)) 

표현이 #Error로 나타납니다. 방정식의 나누기 부분을 제거하고 다음을 남겨 두었습니다.

=IIf(IsNothing(Fields!Hours.Value), 0, Sum(Fields!Hours.Value)) 

올바른 숫자가 나타납니다. 더하기 연산을 수행하면 계산도 오류가 발생합니다. Sum() 함수를 사용할 때 수학 연산을 수행하는 것에 대해 무언가를 좋아하지 않는 것으로 보입니다. 합계가없는 간단한 나누기를 다음 표현식과 같이하면 :

=IIf(IsNothing(Fields!Hours.Value), 0, Fields!Hours.Value/Fields!ReportingHours.Value) 

숫자가 잘 보입니다. 오류가 발생하는 식에 Sum() 함수가있을 때만입니다. 이 문제를 해결하는 방법에 대한 아이디어가 있습니까?

+3

참조 http://stackoverflow.com/questions/13345926/how-can-i-eliminate-error-on-ssrs-expression-when-dividing-by-zero 또는 http://stackoverflow.com/questions/ 19189132/ssrs-expression - 다양한 대안에 대한 0으로 나누기 –

+1

실제로. VBScript의'IIf'에 대한 단락 평가는 없습니다. 당신이 처리하는 방법은 당신의 데이터와 당신이'Sum (Fields! ReportingHours.Value)'이 0이거나 Nothing 일 때 무슨 일이 일어나기를 원하는지에 달려 있습니다. –

답변

0

는 다음 식을보십시오 : -

=IIf(IsNothing(sum(Fields!Hours.Value)), 0, Sum(Fields!Hours.Value)/Sum(Fields!ReportingHours.Value) 

편집 내 이전 게시물을 편집 한

.

+0

제안 된 솔루션이 작동하지 않았습니다. SUM() 함수가있는 두 개의 필드가 포함 된 식은 오류를 반환하는 것으로 보입니다. 한 필드에서만 SUM()을 사용하면 작동합니다. 나는 그것을 고치는 법을 알아낼 수 없다. – user3465260

+0

@ user3465260 이전 게시물을 편집했습니다. 확인하고 의견을 말하십시오. – KrazzyNefarious