2016-09-01 3 views
0

У меня есть следующее выражение, которое должно появиться в заголовке отчета. Однако, когда я запускаю это для одного объекта, который должен подпадать под оператор else, он отображает ошибку вместо метки.SSRS - выражение с несколькими значениями параметров

Параметр представляет собой параметр с несколькими значениями. И если я выберу 3 параметра, он отлично работает, поэтому инструкция else работает. Но когда я выбираю только одно значение, он возвращает ошибку. Что я делаю не так.

=IIF(
(Parameters!Parameter1.Count = 2 AND ((Parameters!Parameter1.Value(0)= 4589 AND Parameters!Parameter1.Value(1) = 4324) OR (Parameters!Parameter1.Value(1)= 4589 AND Parameters!Parameter1.Value(0)) = 4324)), "HLITE LLC", 
JOIN(Parameters!Parameter1.Label," & ") 
) 

Я также попытался следующие:

= SWITCH(
    Parameters!Parameter1.Count = 1 , lookup(Parameters!Parameter1.Value(0), Fields!Legal_Entity_ID.Value, Fields!Legal_Entity.Value, "DataSet2"), 
    (Parameters!Parameter1.Count = 2 AND ((Parameters!Parameter1.Value(0)= 4589 AND Parameters!Parameter1.Value(1) = 4324) OR (Parameters!Parameter1.Value(1)= 4589 AND Parameters!Parameter1.Value(0)) = 4324)), "HHLITE" 
) 

Это терпит неудачу, а также. Но искать выражение само по себе работает и COUNT IS 1

+0

Какое сообщение об ошибке? – p2k

ответ

0

Я думаю, что проблема в том, что есть НЕЗначение (1), когда есть только один выбор.

Возможно гнездование IIF сек будет работать:

=IIF(Parameters!Parameter1.Count = 2, 
    IIF((Parameters!Parameter1.Value(0)= 4589 AND Parameters!Parameter1.Value(1) = 4324) 
      OR (Parameters!Parameter1.Value(1)= 4589 AND Parameters!Parameter1.Value(0)) = 4324), 
     "HLITE LLC", 
     JOIN(Parameters!Parameter1.Label," & "), 
    JOIN(Parameters!Parameter1.Label," & ")) 

Таким образом, только проверяет значение (1), если есть 2.

Если все остальное терпит неудачу,

=IIF(JOIN(Parameters!Parameter1.Label," & ") = "4324 & 4589", "HLITE LLC", JOIN(Parameters!Parameter1.Label," & ")) 
+0

Ни один из этих решений не работал для меня. Если есть 1 выбор, я вижу, что значение (0) существует, а число равно 1 – a415