Проверка нулевой строки SSRS в MS CRM TwoOptionsetValue=True

Я хочу объединить 2 значения twooptionset из MS CRM при истинном условии, разделенных запятыми в текстовом поле, и оставить пустым, если 2 значения twooptionset ложны.

Я написал выражение в SSRS:

=iif(Len(Cstr(iif(Fields!aaValue.Value="True","aa,","") & iif(Fields!bbValue.Value="True","bb,","")))=0,"",
 Left((iif(Fields!aaValue.Value="True","aa,","") & iif(Fields!bbValue.Value="True","bb,","")),
 len(iif(Fields!aaValue.Value="True","aa,","") & iif(Fields!bbValue.Value="True","bb,","")) - 1
)

Если одно из двух значений twooptionset истинно, тогда отображается текст в текстовом поле. Если оба значения twooptionset ложны, в текстовом поле отображается #error.

Итак, как проверить нулевую строку в SSRS?


person Prasanth    schedule 27.04.2016    source источник
comment
IsNothing У меня не сработало, я пробовал раньше. Если X = iif(Fields!aaValue.Value=True,aa,,) & iif(Fields!bbValue.Value=True,bb,,) Есть ли разница между =IIF(len(x)=0,,Left( (x),iif(len(x)=0,0,len(x) - 1))) и =IIF(len(x)=0,,Left((x),len(x) - 1)) Потому что у меня работало =IIF(len(x)=0,,Left((x),iif(len(x)=0,0,len(x) - 1)) и =IIF(len(x)= 0,,Left((x),len(x) - 1)) У меня не сработало   -  person Prasanth    schedule 28.04.2016


Ответы (1)


Вы можете использовать функцию IsNothing. Помните, что в SSRS эти выражения на самом деле написаны на языке Visual Basic.

Однако функция IsNothing вовсе не нужна. Просто используйте функцию преобразования CBool. Он может обрабатывать Nothing (нулевые) значения:

= (Iif(CBool(Fields!aaValue.Value), "aa,", "")
    & Iif(CBool(Fields!bbValue.Value), "bb,", "")).TrimEnd(",")
person Henk van Boeijen    schedule 27.04.2016
comment
IsNothing У меня не сработало, я пробовал раньше. Если X = iif(Fields!aaValue.Value=True,aa,,) & iif(Fields!bbValue.Value=True,bb,,) Есть ли разница между =IIF(len(x)=0,,Left( (x),iif(len(x)=0,0,len(x) - 1))) и =IIF(len(x)=0,,Left((x),len(x) - 1)) Потому что у меня работало =IIF(len(x)=0,,Left((x),iif(len(x)=0,0,len(x) - 1)) и =IIF(len(x)= 0,,Left((x),len(x) - 1)) У меня не сработало - person Prasanth; 28.04.2016