Встроенные коллекции — ссылки на коллекции параметров в отчете с разбивкой на страницы (построитель отчетов)

Область применения: ✔️ Построитель отчетов Microsoft (SSRS) ✔️ Построитель отчетов Power BI ✔️ Конструктор отчетов в SQL Server Data Tools

Параметры отчета с разбивкой на страницы являются одной из встроенных коллекций, на которые можно ссылаться из выражения. Включая в выражение параметры, можно настраивать внешний вид и данные отчета в соответствии с выбором пользователя. Выражения могут использоваться в любом свойстве элемента отчета или текстового поля, имеющего параметр (Fx) или <Expression>. Кроме того, выражения применяются для дополнительного управления содержимым отчета и его внешним видом. Дополнительные сведения см. в разделе Примеры выражений (построитель отчетов и службы SSRS).

При сравнении значений параметра со значениями полей набора данных во время выполнения типы данных сравниваемых элементов должны совпадать. Параметры отчета могут относиться к одному из следующих типов: Boolean, DateTime, Integer, Float или Text, представляющий базовый тип данных String. При необходимости может понадобиться преобразовать тип данных параметра, чтобы он соответствовал значению набора данных. Дополнительные сведения см. в разделе Типы данных в выражениях (построитель отчетов и службы SSRS).

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

Примечание

Создать и изменить определение для отчета на страницу (RDL-файл) можно с помощью построителя отчетов (Майкрософт), построителя отчетов Power BI и конструктора отчетов в SQL Server Data Tools.

Использование в выражении однозначного параметра

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

Пример Description
=Parameters!<Имя_параметра>.IsMultiValue Возвращает значение False.

Проверяет, является ли параметр многозначным. Если возвращено значение True, то параметр является многозначным и представляет собой коллекцию объектов. Если возвращено значение False, значит, параметр является однозначным и представляет собой один объект.
=Parameters!<Имя_параметра>.Count Возвращает целочисленное значение 1. Для однозначного параметра счетчик всегда равен 1.
=Parameters!<Имя_параметра>.Label Возвращает метку параметра, часто используемую в качестве отображаемого имени в раскрывающемся списке допустимых значений.
=Parameters!<Имя_параметра>.Value Возвращает значение параметра. Если свойство Label не было задано, это значение появляется в раскрывающемся списке допустимых значений.
=CStr(Parameters!<Имя_параметра>.Value) Возвращает значение параметра в виде строки.
=Fields(Parameters!<Имя_параметра>.Value).Value Возвращает значение поля с таким же именем, как и у параметра.

Дополнительные сведения о добавлении параметров в фильтр см. в разделе Добавление фильтров набора данных, фильтров области данных и групповых фильтров (построитель отчетов и службы SSRS).

Использование многозначного параметра в выражении

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

Пример Description
=Parameters!<Имя_параметра_с_несколькими_значениями>.IsMultiValue Возвращает значение True или False.

Проверяет, является ли параметр многозначным. Если возвращено значение True, то параметр является многозначным и представляет собой коллекцию объектов. Если возвращено значение False, значит, параметр является однозначным и представляет собой один объект.
=Parameters!<Имя_параметра_с_несколькими_значениями>.Count Возвращает целочисленное значение.

Относится к количеству значений. Для однозначного параметра счетчик всегда равен 1. Для многозначного параметра счетчик имеет значение 0 или больше.
=Parameters!<Имя_параметра_с_несколькими_значениями>.Value(0) Возвращает первое значение многозначного параметра.
=Parameters!<Имя_параметра_с_несколькими_значениями>.Value(Parameters!<Имя_параметра_с_несколькими_значениями>.Count-1) Возвращает последнее значение многозначного параметра.
=Split("Value1,Value2,Value3",",") Возвращает массив значений.

Создает массив значений для многозначного параметра типа String . Во втором параметре можно использовать любой разделитель для разбиения. Это выражение можно использовать для задания значений по умолчанию для многозначного параметра или для создания такого многозначного параметра, который надо отослать во вложенный или детализированный отчет.
=Join(Parameters!<Имя_параметра_с_несколькими_значениями>.Value,", ") Возвращает значение типа Строка , содержащее значения многозначного параметра, разделенные точкой с запятой. Во втором параметре можно использовать любой разделитель для соединения.

Дополнительные сведения об использовании параметров в фильтре см. в разделе Параметры отчета (построитель отчетов и конструктор отчетов).

См. также:

Выражения (построитель отчетов и службы SSRS)
Часто используемые фильтры (построитель отчетов и службы SSRS)
Добавление, изменение или удаление параметра отчета (построитель отчетов и службы SSRS)
Руководство по Добавление параметра к отчету (построитель отчетов)
Учебники по построителю отчетов
Встроенные коллекции в выражениях (построитель отчетов и службы SSRS)