Ошибка оператора IIF при делении на 0

Итак, у меня есть #ERROR при делении на 0, поэтому я попытался зафиксировать это, используя следующий код

=IIf(Code.SumLookup(LookupSet(Fields!region.Value, Fields!region.Value, Fields!X.Value, "Dataset2")))=0,"-", Fields!Bad.Value/(Code.SumLookup(LookupSet(Fields!region.Value, Fields!region.Value, Fields!ticket_count.Value, "Dataset2")))

Таким образом, это должно сделать следующее: если [значение в FieldsX в «Наборе данных2»] = 0, то показать «-», иначе выполнить расчет [Fields!Bad.Value/FieldX в «Наборе данных2» ]

Но по какой-то причине это просто терпит неудачу при попытке запуска: [BC30455] Аргумент не указан для параметра «FalsePart» «Public Function IIf (Expression As Boolean, TruePart As Object, FalsePart As Object) As Object».

Что-то не так с тем, как я отформатировал оператор Iif? Потому что ложный расчет работает нормально при независимом использовании.

Есть идеи?


person dragonfury    schedule 30.03.2015    source источник


Ответы (1)


Правильно проверьте скобки. Это неправильно. Код ниже может работать для вас.

=IIf(Code.SumLookup(LookupSet(Fields!region.Value, Fields!region.Value, Fields!X.Value, "Dataset2"))=0,"-", Fields!Bad.Value/(Code.SumLookup(LookupSet(Fields!region.Value, Fields!region.Value, Fields!ticket_count.Value, "Dataset2"))))

person Sarat    schedule 30.03.2015
comment
Хорошо, теперь это работает, но все еще возвращает #ERROR - так что похоже, что ему не нравится часть TRUE, потому что ложная часть работает нормально, если [Field! X.Value in Dataset2] › 0 ---- Любые идеи? - person dragonfury; 30.03.2015
comment
Это может быть ur else part — десятичное значение, а if part — строка. Проверьте, поставив 0 или 1. Если он работает нормально, вам нужно подумать о некоторых альтернативах. - person Sarat; 30.03.2015
comment
Да, если часть else имеет тип Decimal, могу ли я преобразовать истинную часть в десятичную? это поможет? (Извините за назойливость, мои познания в выражениях/построителе отчетов весьма ограничены) - person dragonfury; 30.03.2015