Добавление каскадных параметров в отчет на страницу (построитель отчетов)

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

Каскадные параметры предоставляют способ управления большими объемами данных в отчетах с разбивкой на страницы. Можно определить набор связанных параметров таким образом, чтобы список значений для одного параметра зависел от значения, выбранного в другом параметре. Например, первый параметр является независимым и может представлять список категорий продуктов. При выборе пользователем категории второй параметр зависит от значения первого параметра. Эти значения обновляются списком подкатегорий выбранной категории. При просмотре пользователем отчета значения параметров категорий и подкатегорий используются для фильтрации данных отчета.

Примечание.

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

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

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

Сведения о создании каскадных параметров с несколькими значениями и включении функции выбора всех значений см. в разделе "Как выбрать все каскадные параметры с несколькими значениями".

  1. В области "Данные отчета" щелкните правой кнопкой мыши источник данных и выберите " Добавить набор данных".

  2. В поле "Имя" введите имя набора данных.

  3. В источнике данных выберите имя источника данных или нажмите кнопку "Создать ", чтобы создать ее.

  4. В поле Тип запросавыберите тип запроса для выбранного источника данных. В этой статье предполагается тип текста запроса.

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

    1. Список полей источника данных. Например, в инструкции SELECT Transact-SQL инструкция указывает список имен столбцов базы данных из заданной таблицы или представления.

    2. По одному параметру запроса для каждого каскадного параметра. Параметр запроса ограничивает данные, полученные из источника данных, путем указания определенных значений для включения или исключения из запроса. Как правило, параметры запроса появляются в предложении ограничения запроса. Например, в инструкции Transact-SQL SELECT параметры запроса происходят в предложении WHERE.

  6. Выберите "Выполнить " (!). После включения параметров запроса и запуска запроса параметры отчета, соответствующие параметрам запроса, создаются автоматически.

    Примечание.

    Порядок параметров запроса при первом запуске запроса определяет порядок их создания в отчете. Сведения об изменении порядка см. в разделе "Изменение порядка параметра отчета" (построитель отчетов)

  7. Нажмите ОК.

Затем создайте набор данных, предоставляющий значения для независимого параметра.

Создание набора данных для предоставления значений для независимого параметра

  1. В области "Данные отчета" щелкните правой кнопкой мыши источник данных и выберите " Добавить набор данных".

  2. В поле "Имя" введите имя набора данных.

  3. В поле Источник данныхудостоверьтесь, что имя совпадает с именем источника данных, выбранного в шаге 1.

  4. В поле Тип запросавыберите тип запроса для выбранного источника данных. В этой статье предполагается тип текста запроса.

  5. В поле "Запрос" введите запрос, используемый для получения значений этого параметра. Запросы независимых параметров обычно не содержат параметров запроса. Например, чтобы создать запрос для параметра, предоставляющего все значения категорий, можно использовать инструкцию Transact-SQL, аналогичную следующему блоку:

    SELECT DISTINCT <column name> FROM <table>  
    

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

    Выберите "Выполнить " (!). Результирующий набор показывает доступные значения для первого параметра.

  6. Нажмите ОК.

Затем задайте свойства первого параметра, чтобы использовать этот набор данных для заполнения доступных значений во время выполнения.

Установка доступных значений для параметра отчета

  1. В области "Данные отчета" в папке "Параметры" щелкните правой кнопкой мыши первый параметр и выберите "Свойства параметров".

  2. В поле Имяпроверьте правильность имени параметра.

  3. Выберите доступные значения.

  4. Выберите " Получить значения" из запроса. Появится три поля.

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

  6. В поле Value выберите имя поля, которое предоставляет значение параметра.

  7. В метке выберите имя поля, которое предоставляет метку параметра.

  8. Нажмите ОК.

Затем создайте набор данных, предоставляющий значения для зависимых параметров.

Создание набора данных для предоставления значений для зависимых параметров

  1. В области "Данные отчета" щелкните правой кнопкой мыши источник данных и выберите "Добавить набор данных".

  2. В поле "Имя" введите имя набора данных.

  3. В поле Источник данныхудостоверьтесь, что имя совпадает с именем источника данных, выбранного в шаге 1.

  4. В поле Тип запросавыберите тип запроса для выбранного источника данных. В этой статье предполагается тип текста запроса.

  5. В поле "Запрос" введите запрос, используемый для получения значений этого параметра. Запросы для зависимых параметров обычно включают параметры запроса для каждого параметра, от которого зависит данный параметр. Например, можно создать запрос для параметра, который предоставляет все значения подкатегории (зависимый параметр) для категории (независимый параметр). Для этого можно использовать инструкцию Transact-SQL, аналогичную следующему блоку:

    SELECT DISTINCT Subcategory FROM <table>   
    WHERE (Category = @Category)  
    

    WHERE В предложении Категория — это имя поля из <table> и @Category является параметром запроса. Эта инструкция возвращает список подкатегорий для категории, указанной в параметре @Category. Во время выполнения это значение заполняется значением, которое пользователь выбирает для параметра отчета с тем же именем.

  6. Нажмите ОК.

Затем задайте свойства второго параметра, чтобы использовать этот набор данных для заполнения доступных значений во время выполнения.

Установка доступных значений для второго параметра

  1. В области "Данные отчета" в папке "Параметры" щелкните правой кнопкой мыши первый параметр и выберите "Свойства параметров".

  2. В поле Имяпроверьте правильность имени параметра.

  3. Выберите доступные значения.

  4. Выберите " Получить значения" из запроса.

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

  6. В поле Value выберите имя поля, которое предоставляет значение параметра.

  7. В метке выберите имя поля, которое предоставляет метку параметра.

  8. Нажмите ОК.

Проверка каскадных параметров

  1. Выберите Выполнить.

  2. В списке для первого независимого параметра выберите значение.

    Обработчик отчетов запускает запрос набора данных для следующего параметра и передает ему значение, выбранное для первого параметра. Список для второго параметра заполняется доступными значениями на основе первого значения параметра.

  3. В списке для второго зависимого параметра выберите значение.

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

  4. Выберите "Просмотреть отчет". Отчет обновляет отображение на основе выбранных параметров.