Я предполагаю, что вы хотите исключить числовое значение из суммы, в которой строковое значение ячейки в той же строке содержит «Прочие», а указанная вами функция используется в качестве критерия группировки таблицы в отчете. Извиняюсь, если это не правильно.
Невозможно сделать это без использования второй части логики, ни функции, ни условия Iif
. На данный момент у меня нет SSRS для проверки этого, но (при условии, что ваш столбец значений является целым числом, код будет выглядеть примерно так:
Public Function ExcludeOthers(rowDesc As String, rowVal as integer)
if ChangeWord(rowDesc) = "Other NOT INCL"
Return 0
else
Return rowVal
end if
End Function
Затем в ячейке, в которой вы хотите отобразить условную сумму:
=Sum(ExcludeOthers(Fields!desc.Value,Fields!val.Value))
В качестве альтернативы, вы можете сделать это без функции, используя Iif
в ячейке, где появится условная сумма:
=Sum(Iif(ChangeWord(Fields!desc.Value) = "Other NOT INCL",0,Fields!desc.Value))
В зависимости от характера исходных данных вы также можете сделать это, добавив вычисляемые столбцы в исходный запрос отчета.
Я бы предпочел второй или третий вариант - для этой цели пользовательский код кажется излишним.