2012-02-08 3 views
0

Я показываю jobid в своем отчете. Я хочу, чтобы, если ID задания это 02,07.11,19,21,29,31,40 и т. д., то эти строки отчета не будут показаны. Я знаю, как скрыть строки, пишущие выражение, но мне просто нужно знать, есть ли короткий способ сказать, что моя работа - это 02,07.11,19,21,29,31,40.Reporting Services - скрыть строку таблицы на основе значения параметра отчета

еще я делаю как = IIF (Fields! JID.Value = 02 или Поля! JID.Value = 07 или Поля! JID.Value = 11 или Fields! JID.Value = 19, True, False)

есть ли способ как = IIF (Fields! JID.Value в (02,07.11,19,21,29,31,40), True, False)

если я отправить идентификатор задания в качестве значения параметра посыла от вызывающей среды, такой как «02,07.11,19,21,29,31,40», а затем как это сделать.

, пожалуйста, позвольте мне сообщить.

ответ

0

Будет ли это работать для ваших целей, чтобы справиться с этим в SQL? У вас есть несколько вариантов ...

  1. Вариант 1

    Настраивайте многозначный параметр строки в отчете под названием @JIDValues. SQL sprocs не принимает массивы значений, поэтому вам нужно передать это как строковый массив в ваш sproc. Чтобы сделать это, вам нужно будет объединить свои значения вместе в своем коде отчета, который выполняет хранимую процедуру.

    JOIN(Parameters!SiteGroupList.Value, ",") & "'"

    Внутри sproc (или отчет в зависимости от ваших предпочтений) вам нужно будет добавить и PREPEND запятые в строку, так что следующий будет работать для ваших значений на концах, а также в середине строки. Следующее предложение WHERE сможет определить, содержится ли конкретный идентификатор задания в строке с разделителями-запятыми, переданной в sproc.

    WHERE @JIDValues LIKE '%,' + LTRIM(RTRIM(STR(tableA.JID))) + ',%'

  2. Вариант 2

    В качестве альтернативы, если это статический список, вы могли бы жестко закодировать свой sproc, чтобы исключить их.

+0

Я хочу сделать это в уровне отчета. ваш второй вариант для SProc, но ваш первый вариант кажется для отчета, но как работает JOIN (Parameters! SiteGroupList.Value, ",") и где разместить это выражение? если я посылаю no id задания, разделенного запятой как значение параметра, тогда join добавит больше запятой .... я просто не понимаю, как это работает, чтобы скрыть строки на основе значения, разделенного запятой? plzz обсудить подробно – Thomas

+0

«Скрыть строки» означает ли вы исключить их из своих результатов? Если нет, что вы подразумеваете под этим? Ни одно из предложенных мной решений не касается строгого отчета. Оба требуют некоторой работы от имени sproc. Я изменю свой ответ, чтобы более четко отразить ваши варианты. – unforgiven1987

+0

Томас, тебе повезло? – unforgiven1987

Смежные вопросы