Sum IIF Expression - PullRequest
       18

Sum IIF Expression

0 голосов
/ 29 декабря 2008

Я пытаюсь суммировать выражение в visual studio и просто продолжаю получать #error, но не уверен, почему, так как это первый раз, когда я пытался суммировать выражение, когда-либо делал это только в одном поле раньше. Любые предложения !!!

 =IIf(Fields!STATUS.value = "Completed" AND Fields!DONOTINVOICE.value = True, Fields!ORDERCOST.Value, "")

Ответы [ 5 ]

2 голосов
/ 29 декабря 2008

Значение IIf () будет преобразовано в строку (""), когда ваше условие ложно. Вы не можете сложить строку. Попробуйте использовать 0 вместо.

0 голосов
/ 16 февраля 2015

Для Visual Studio оберните IIf в Cdbl:

=SUM(CDbl(IIf(Fields!STATUS.value = "Completed" AND Fields!DONOTINVOICE.value = True, Fields!ORDERCOST.Value, 0)))
0 голосов
/ 14 мая 2014
=Sum(IIf(Fields!STATUS.value = "Completed" AND Fields!DONOTINVOICE.value = 1.0, Fields!ORDERCOST.Value, 0.0))

Вы должны использовать «.0» в конце значения: убедитесь, что возвращаемое значение выражения if не является строкой

0 голосов
/ 30 декабря 2008

Ok не удалось выяснить сумму в выражении, поэтому я просто использовал инструкцию case в новом наборе данных для построения функции суммы. Пример ниже, это во внутреннем запросе, и я сделал сумму в главном бите. Просто, если кто-то еще получит эту проблему, вот как я решил ее.

СЛУЧАЙ WHEN TBL_REPAIR_ORDER.STATUS = 'Завершено' И TBL_REPAIR_ORDER.DONOTINVOICE = 1 ТОГДА TBL_REPAIR_ORDER.ORDERCOST ELSE 0 КОНЕЦ КАК ВЫПОЛНЕНО

0 голосов
/ 29 декабря 2008

Ты имеешь в виду вот так, только что попробовал и суммировал что-нибудь, просто получи 0: (

= Сумма (IIf (Поля! STATUS.value = "Завершено" И Поля! DONOTINVOICE.value = 1, Поля! ORDERCOST.Value, 0))

...