Службы Reporting Services - скрыть столбец таблицы на основе параметра отчета - PullRequest
11 голосов
/ 07 апреля 2009

У меня есть отчет в службах Reporting Services 2005, и я хочу скрыть или показать один столбец таблицы на основе параметра отчета. У кого-нибудь есть идеи, как это сделать?

Спасибо!

Ответы [ 8 ]

10 голосов
/ 27 марта 2010

Используйте свойство видимости столбца. Это сработало для меня.

=iif(Parameters!ParameterName.Value = "TextValueOfTheParameter",False,True)
7 голосов
/ 07 апреля 2009

Установите видимость для столбца в выражение, которое будет возвращать true или false. Это свойство можно найти, например, на вкладке «Видимость» в TextBox.

Выберите опцию радио для выражения, и тогда ваше выражение может выглядеть как

=Parameters!ShowColumn.Value
3 голосов
/ 22 октября 2010

Подсказка: если выражение возвращает "False", столбец или строка будут видны. Если выражение возвращает «True», выражение будет скрыто. Это обмануло меня сначала.

2 голосов
/ 17 апреля 2012

Допустим, мой отчет (SSRS 2005) состоит из 5 столбцов. И я хочу показать / скрыть столбцы на основе параметра (множественный выбор со всеми 5 именами столбцов), выбранного пользователем. сделать следующее

1) Создайте параметр типа string (ColumnVisibility - это имя моего параметра) с нужными именами столбцов в метках для 5 столбцов и INT число (01,02,03,04,05) соответственно в значениях в разделе «Доступные значения» мастера параметров.

2) Затем перейдите в колонку Свойства дизайна. Перейдите в «видимость» и вставьте следующее

=iif(instr(Join(Parameters!ColumnVisibility.Value,","),"01")>0,false,true) 

3) повторить то же самое для всех столбцов, увеличив значение int на 1.., Например, следуя

2-й столбец

=iif(instr(Join(Parameters!ColumnVisibility.Value,","),"**02**")>0,false,true)

3-я колонна

=iif(instr(Join(Parameters!ColumnVisibility.Value,","),"**03**")>0,false,true)

И так далее. Для SSRS 2008, когда вы щелкаете правой кнопкой мыши по столбцу, вы видите опцию «Видимость столбца». вставьте код в раздел «показать или скрыть на основе выражения» для каждого столбца.

2 голосов
/ 22 октября 2010

Для некоторых моих отчетов я установил Видимость (в частности, свойство Скрытый ) для столбца :

=IsNothing(Fields!Site.Value)

Обратите внимание, что это работает, только если соответствующее поле может быть пустым в базовом наборе данных, в противном случае вы увидите пустой столбец.

1 голос
/ 25 января 2013

Если вы хотите скрыть весь столбец, когда для этого конкретного столбца в отчете вообще нет данных, вы можете использовать следующий код в видимости / выражении столбца:

=IIF(IsNothing (Sum(Fields!columnA.Value, "ReportA")),False,True)
0 голосов
/ 19 июля 2017

Чтобы удалить пустой столбец,

Щелкните правой кнопкой мыши по столбцу, чтобы выбрать Видимость столбца, затем установите выражение для скрытого:

IIF(IsNothing(Fields!FieldName.Value),True,False)
0 голосов
/ 23 октября 2014

когда я делаю, как указано выше, я могу сделать так, чтобы столбец исчез, но в моей таблице остался пробел. Это ожидаемый результат. Я надеялся, что колонны тоже переместятся. Я пытаюсь скрыть столбец для одной группы, а затем отобразить его для следующей группы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...