Оператор iif в службах Reporting Services, включающий только значения в группе

В Reporting Services 2005 я создал таблицу, в которой есть несколько групп. Я хотел бы выполнить элементарную iif() в одном из столбцов в группе, и хотя Intellisense сообщает, что я правильно форматирую свой iif(), когда я перехожу к предварительному просмотру отчета, мне говорят, что мне не хватает ложной части. Кроме того, "," после значения подчеркивается как синтаксическая ошибка.

=Sum(iif((Fields!Repeat.Value, "Departments") = "*", 0, Fields!Hours_Earned.Value))

Группа, с которой я работаю, называется «Отделы», и есть столбец nvarchar, в котором иногда бывает звездочка. Если в этом столбце для этой группы есть звездочка, я хочу, чтобы отображался 0 и т. Д. Есть идеи? Кажется, что первое ',' неправильно истолковывается как окончание моего выражения в iif(), но это не так, и оно заключено в круглые скобки.


person kd7iwp    schedule 09.12.2009    source источник


Ответы (1)


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

=Sum(iif(Fields!Repeat.Value = "*", 0, Fields!Hours_Earned.Value), "Departments")
person kd7iwp    schedule 09.12.2009