Параметры отчета (Построитель отчетов и Конструктор отчетов)Report Parameters (Report Builder and Report Designer)

ПРИМЕНИМО К:APPLIES TO: даСлужбы SQL Server 2016 Reporting Services и более поздние версииSQL Server 2016 Reporting Services and later даSharePointSharePointдаСлужбы SQL Server 2016 Reporting Services и более поздние версииSQL Server 2016 Reporting Services and later даSharePointSharePoint

ПРИМЕНИМО К:APPLIES TO: даСлужбы SQL Server 2016 Reporting Services и более поздние версииSQL Server 2016 Reporting Services and laterдаСлужбы SQL Server 2016 Reporting Services и более поздние версииSQL Server 2016 Reporting Services and later

В этом разделе описываются распространенные варианты применения параметров отчета Службы Reporting ServicesReporting Services , доступные свойства и многое другое.This topic describes the common uses for Службы Reporting ServicesReporting Services report parameters, the properties you can set, and much more. Параметры отчета позволяют управлять данными отчета, объединять связанные отчеты и изменять внешний вид отчетов.Report parameters enable you to control report data, connect related reports together, and vary report presentation. Параметры отчета можно использовать в отчетах с разбиением на страницы, создаваемых с помощью таких средств, как построитель отчетовReport Builder и конструктор отчетов, а также в мобильных отчетах, которые создаются, используя Издатель мобильных отчетов для SQL ServerSQL Server Mobile Report Publisher.You can use report parameters in paginated reports you create in построитель отчетовReport Builder and Report Designer, and also in mobile reports you create in Издатель мобильных отчетов для SQL ServerSQL Server Mobile Report Publisher. Дополнительные сведения о параметрах отчета см. в разделе Понятия параметров отчета.Read more about Report Parameters Concepts.

Сведения о самостоятельном добавлении параметра в отчет см. в разделе Учебник. Добавление параметра к отчету (построитель отчетов).To try adding a parameter to a report yourself, see Tutorial: Add a Parameter to Your Report (Report Builder).

Распространенные варианты применения параметровCommon Uses for Parameters

Здесь представлены некоторые из распространенных вариантов применения параметров.Here are some of the most common ways to use parameters.

Управление данными отчетов с разбиением на страницы и мобильных отчетовControl Paginated and Mobile Report Data

  • Фильтруйте данные отчета с разбиением на страницы в источнике данных, записывая запросы набора данных, которые содержат переменные.Filter paginated report data at the data source by writing dataset queries that contain variables.

  • Фильтруйте данные из общего набора данных.Filter data from a shared dataset. При добавлении общего набора данных к отчету с разбиением на страницы запрос изменять нельзя.When you add a shared dataset to a paginated report, you cannot change the query. В отчете можно добавить фильтр набора данных, включающий ссылку на параметр создаваемого отчета.In the report, you can add a dataset filter that includes a reference to a report parameter that you create.

  • Фильтруйте данные из общего набора данных в мобильном отчете SQL ServerSQL Server .Filter data from a shared dataset in a SQL ServerSQL Server mobile report. Подробнее см. в разделе Create mobile reports with SQL Server Mobile Report Publisher .See Create mobile reports with SQL Server Mobile Report Publisher for more information.

  • Предоставьте пользователям возможность настройки данных в отчете с разбиением на станицы.Enable users to specify values to customize the data in a paginated report. Например, можно указать два параметра, задающие начальную и конечную даты для данных продаж.For example, provide two parameters for the start date and end date for sales data.

Объединение связанных отчетовConnect Related Reports

  • Параметры можно применять для связи основных отчетов с детализированными, вложенными и связанными отчетами.Use parameters to relate main reports to drillthrough reports, to subreports, and to linked reports. При проектировании набора отчетов каждый отчет можно сконструировать для ответа на конкретные вопросы.When you design a set of reports, you can design each report to answer certain questions. Каждый отчет может предоставлять иную точку зрения или другой уровень подробности отображаемой информации.Each report can provide a different view or a different level of detail for related information. Для обеспечения набора взаимосвязанных отчетов создайте параметры для взаимосвязанных данных в конечных отчетах.To provide a set of interrelated reports, create parameters for the related data on target reports.

    Дополнительные сведения см. в разделах Детализированные отчеты (построитель отчетов и службы SSRS), Вложенные отчеты (построитель отчетов и службы SSRS) и Создание связанного отчета.For more information, see Drillthrough Reports (Report Builder and SSRS), Subreports (Report Builder and SSRS), and Create a Linked Report.

  • Настройка наборов параметров для нескольких пользователей.Customize sets of parameters for multiple users. Создайте два связанных отчета на основе отчета о продажах на сервере отчетов.Create two linked reports based on a sales report on the report server. В одном связанном отчете используются стандартные значения параметров для специалистов по продажам, а во втором связанном отчете используются стандартные значения параметров для менеджеров по продажам.One linked report uses predefined parameter values for sales persons and the second linked report uses predefined parameter values for sales managers. В обоих отчетах используется одно определение отчета.Both reports use the same report definition.

Изменение формы представления отчетаVary Report Presentation

  • Отправьте команды серверу отчетов посредством запроса URL для настройки обработки отчета.Send commands to a report server through a URL request, to customize the rendering of a report. Дополнительные сведения см. в разделах Доступ по URL-адресу (SSRS) и Передача параметра отчета в URL-адресе.For more information, see URL Access (SSRS) and Pass a Report Parameter Within a URL.

  • Обеспечение возможности настройки внешнего вида отчета с помощью указываемых пользователями значений.Enable users to specify values to help customize the appearance of a report. Например, можно добавить параметр логического типа, определяющий, будут ли вложенные группы строк в таблице свернутыми или развернутыми.For example, provide a Boolean parameter to indicate whether to expand or collapse all nested row groups in a table.

  • Позвольте пользователям настраивать данные и оформление отчета, включая параметры в выражение.Enable users to customize report data and appearance by including parameters in an expression.

    Дополнительные сведения см. в разделе Ссылки на коллекцию параметров (построитель отчетов и службы SSRS).For more information, see Parameters Collection References (Report Builder and SSRS).

Просмотр отчета с параметрамиViewing a Report with Parameters

При просмотре отчета, имеющего параметры, на панели инструментов средства просмотра отчетов отображаются все параметры, что обеспечивает возможность интерактивного задания значений пользователем.When you view a report that has parameters, the report viewer toolbar displays each parameter so you can interactively specify values. На следующей иллюстрации показана область параметров для отчета с параметрами @ReportMonth, @ReportYear, @EmployeeID, @ShowAll, @ExpandTableRows, @CategoryQuota и @SalesDate.The following illustration shows the parameter area for a report with parameters @ReportMonth, @ReportYear, @EmployeeID, @ShowAll, @ExpandTableRows, @CategoryQuota, and @SalesDate.

Просмотр отчета с параметрамиView report with parameters

  1. Область параметров . На панели инструментов средства просмотра отчетов отображаются запросы и значения по умолчанию для всех параметров.Parameters pane The report viewer toolbar displays a prompt and default value for each parameter. Структуру параметров можно настроить в области параметров.You can customize the layout of parameters in the parameters pane. Дополнительные сведения см. в разделах Настройка области параметров в отчете (построитель отчетов).For more information, see Customize the Parameters Pane in a Report (Report Builder).

  2. Параметр @SalesDate. Параметр @SalesDate имеет тип данных DateTime.@SalesDate parameter The parameter @SalesDate is data type DateTime. Рядом с текстовым полем отображается запрос на выбор даты.The prompt Select the Date appears next to the text box. Чтобы изменить дату, введите новую дату в текстовом поле или используйте элемент управления «календарь».To modify the date, type a new date in the text box or use the calendar control.

  3. Параметр @ShowAll. Параметр @ShowAll имеет тип данных Boolean.@ShowAll parameter The parameter @ShowAll is data type Boolean. Воспользуйтесь переключателями, чтобы выбрать значение True или False.Use the radio buttons to specify True or False.

  4. Показать или скрыть область параметров . На панели инструментов средства просмотра отчетов щелкните эту стрелку, чтобы отобразить или скрыть область параметров.Show or Hide Parameter Area handle On the report viewer toolbar, click this arrow to show or hide the parameters pane.

  5. Параметр @CategoryQuota. Параметр @CategoryQuota имеет тип данных Float, поэтому он принимает числовое значение.@CategoryQuota parameter The parameter @CategoryQuota is data type Float, so it takes a numeric value. Параметр @CategoryQuota разрешает несколько значений.@CategoryQuota is set to allow multiple values.

  6. Просмотреть отчет . На панели инструментов средства просмотра отчетов нажмите кнопку Просмотреть отчет , чтобы запустить отчет.View Report After you enter parameter values, click View Report to run the report. Если для всех параметров заданы значения по умолчанию, то отчет запускается автоматически при первом просмотре.If all parameters have default values, the report runs automatically on first view.

Создание параметровCreating Parameters

Существует несколько способов создания параметров отчета.You can create report parameters in a few different ways.

Примечание

Не все источники данных поддерживают параметры.Not all data sources support parameters.

Запрос набора данных или хранимая процедура с параметрамиDataset query or stored procedure with parameters

Добавить запрос набора данных, который содержит переменные или хранимую процедуру набора данных, которая содержит параметры ввода.Add a dataset query that contains variables or a dataset stored procedure that contains input parameters. Параметр набора данных создается для каждой переменной или параметра ввода, а параметр отчета создается для каждого параметра набора данных.A dataset parameter is created for each variable or input parameter, and a report parameter is created for each dataset parameter.

Свойства набора данных параметров в построителе отчетовReport Builder Parameter Dataset Properties

На этом изображении из построителя отчетов показаны следующие элементы.This image from Report Builder shows:

  1. Параметры отчета в области данных отчета.The report parameters in the Report Data pane.

  2. Набор данных с параметрами.The dataset with the parameters.

  3. Область параметров.The Parameters pane.

  4. Параметры, указанные в диалоговом окне "Свойства набора данных".The parameters listed in the Dataset Properties dialog box.

Набор данных может быть общим или внедренным.The dataset can be embedded or shared. При добавлении общего набора данных к отчету параметры набора данных, помеченные, как внутренние, не могут переопределяться в отчете.When you add a shared dataset to a report, dataset parameters that are marked internal cannot be overridden in the report. Параметры набора данных, не помеченные, как внутренние, можно переопределять.You can override dataset parameters that are not marked internal.

Дополнительную информацию смотрите в подразделе Запрос набора данных в этом разделе.For more information, see Dataset Query in this topic.

Создание параметра вручнуюCreate a parameter manually

Создание параметра вручную с использованием области данных отчета.Create a parameter manually from the Report Data pane. Параметры отчета можно настроить таким образом, чтобы пользователь мог интерактивно вводить значения, позволяющие настроить содержимое или внешний вид отчета.You can configure report parameters so that a user can interactively enter values to help customize the contents or appearance of a report. Также в настройках параметров отчета можно запретить изменение пользователями заранее заданных значений.You can also configure report parameters so that a user cannot change preconfigured values.

Примечание

Поскольку на сервере параметры управляются независимо, переиздание основного отчета с новыми параметрами не перезапишет существующие параметры отчета.Because parameters are managed independently on the server, republishing a main report with new parameter settings does not overwrite the existing parameters settings on the report.

Элемент отчета с параметромReport part with a parameter

Добавление элемента отчета, содержащего ссылки на параметр или общий набор данных, содержащий переменные.Add a report part that contains references to a parameter or to a shared dataset that contains variables.

Элементы отчета хранятся на сервере отчетов и доступны другим пользователям для использования в своих отчетах.Report parts are stored on the report server and available for others to use in their reports. На сервере отчетов нельзя управлять элементами отчетов, которые являются параметрами.Report parts that are parameters cannot be managed from the report server. Можно воспользоваться поиском параметров в галерее элементов отчетов, а после их добавления настроить параметры уже в отчете.You can search for parameters in the Report Part Gallery and after you add them, configure them in your report. Дополнительные сведения см. в разделе Элементы отчета (построитель отчетов и службы SSRS).For more information, see Report Parts (Report Builder and SSRS).

Примечание

Параметры можно опубликовать как отдельный элемент отчета для областей данных, имеющих зависящие наборы данных с параметрами.Parameters can be published as a separate report part for data regions that have dependent datasets with parameters. Хотя параметры являются элементами отчета, напрямую добавить к отчету часть отчета-параметра нельзя.Although parameters are listed as a report part, you cannot add a report part parameter directly to a report. Вместо этого следует добавить элемент отчета, после чего все необходимые параметры отчета будут автоматически созданы на основе запросов набора данных, включенных или ссылаемых в части отчета.Instead, add the report part, and any necessary report parameters are automatically generated from dataset queries that are contained or referenced by the report part. Дополнительные сведения об элементах отчета см. в разделах Элементы отчета (построитель отчетов и службы SSRS) и Элементы отчета в конструкторе отчетов (SSRS).For more information about report parts, see Report Parts (Report Builder and SSRS) and Report Parts in Report Designer (SSRS).

Значения параметровParameter Values

Далее представлены параметры для выбора значений параметра в отчете.The following are options for selecting parameter values in the report.

  • Выберите одно значение параметра из раскрывающегося списка.Select a single parameter value from a drop-down list.

  • Выберите несколько значений параметра из раскрывающегося списка.Select multiple parameter values from a drop-down list.

  • Выберите значение из раскрывающегося списка для одного параметра, которое определяет доступные значения для другого параметра в раскрывающемся списке.Select a value from a drop-down list for one parameter, which determines the values that are available in the drop-down list for another parameter. Это каскадные параметры.These are cascading parameters. Каскадные параметры позволяют вам быстро фильтровать значения параметров из тысяч значений в управляемое количество.Cascading parameters enables you to successively filter parameter values from thousands of values to a manageable number.

    Дополнительные сведения см. в разделах Добавление каскадных параметров в отчет (построитель отчетов и службы SSRS).For more information, see Add Cascading Parameters to a Report (Report Builder and SSRS).

  • Запустите выполнение отчета без предварительного выбора значения параметра, так как для параметра было создано значение по умолчанию.Run the report without having to first select a parameter value because a default value has been created for the parameter.

Свойства параметров отчетаReport Parameter Properties

Вы можете изменять свойства параметров отчета, используя диалоговое окно Параметры отчета.You can change the report parameter properties by using the Report Properties dialog box. В следующей таблице перечислены свойства, которые можно указать для каждого параметра:The following table summarizes the properties that you can set for each parameter:

СвойствоProperty ОписаниеDescription
ИмяName Введите имя параметра с учетом регистра.Type a case-sensitive name for the parameter. Имя должно начинаться с буквы и может содержать буквы, цифры и подчеркивание ().The name must begin with a letter and can have letters, numbers, an underscore (). Имя не может содержать пробелы.The name cannot have spaces. Для автоматически создаваемых параметров имя соответствует параметру в запросе набора данных.For automatically generated parameters, the name matches the parameter in the dataset query. По умолчанию для создаваемых вручную параметров используются имена вида ReportParameter1.By default, manually created parameters are similar to ReportParameter1.
ЗапросPrompt Текст, отображаемый рядом с параметром на панели инструментов средства просмотра отчетов.The text that appears next to the parameter on the report viewer toolbar.
Тип данныхData type Параметр отчета должен иметь один из следующих типов данных:A report parameter must be one of the following data types:

Boolean.Boolean. Пользователь выбирает значение True или False из переключателя.The user selects True or False from a radio button.

DateTime.DateTime. Пользователь выбирает дату из элемента управления «календарь».The user selects a date from a calendar control.

Integer.Integer. Пользователь вводит значения в текстовое поле.The user types values in a text box.

Float.Float. Пользователь вводит значения в текстовое поле.The user types values in a text box.

Text.Text. Пользователь вводит значения в текстовое поле.The user types values in a text box.

При задании для параметра доступных значений пользователь выбирает значения из раскрывающегося списка, даже если тип данных — DateTime.When available values are defined for a parameter, the user chooses values from a drop-down list, even when the data type is DateTime.

Дополнительную информацию о типах данных отчета смотри RDL Data Types.For more information about report data types, see RDL Data Types.
Разрешить пустое значениеAllow blank value Установите этот параметр, если значение параметра может быть пустой строкой или пустым значением.Select this option if the value of the parameter can be an empty string or a blank.

Если при указании допустимых значений параметра необходимо также разрешить ввод пустого значения, то пустое значение необходимо явно включить в число задаваемых.If you specify valid values for a parameter, and you want a blank value to be one of the valid values, you must include it as one of the values that you specify. При выборе данного параметра пустое значение не включается автоматически в перечень доступных значений.Selecting this option does not automatically include a blank for available values.
Разрешить значение NULLAllow null value Выберите этот параметр, если значением параметра может быть NULL.Select this option if the value of the parameter can be a null.

Если при указании допустимых значений параметра необходимо также разрешить ввод значения NULL, то значение NULL необходимо явно включить в число задаваемых.If you specify valid values for a parameter, and you want null to be one of the valid values, you must include null as one of the values that you specify. При выборе данного параметра значение NULL не включается автоматически в перечень доступных значений.Selecting this option does not automatically include a null for available values.
Разрешить несколько значенийAllow multiple values Укажите доступные значения, чтобы создать раскрывающийся список, в котором пользователи смогут выбирать значения.Provide available values to create a drop-down list that your users can choose from. Это оптимальный вариант, позволяющий обеспечить включение в запрос набора данных только допустимых значений.This is a good way to ensure that only valid values are submitted in the dataset query.

Выберите этот параметр, если значением для параметра могут стать несколько значений, отображаемые в раскрывающемся списке.Select this option if the value for the parameter can be multiple values that are displayed in a drop-down list. Значения NULL не разрешены.Null values are not allowed. Если выбран этот параметр, в раскрывающемся списке параметров к списку доступных значений добавляются флажки.When this option is selected, check boxes are added to the list of available values in a parameter drop-down list. В верхней части списка имеется флажок Выбрать все.The top of the list includes a check box for Select All. Пользователи могут устанавливать флажки для необходимых значений.Users can check the values that they want.

При быстром изменении данных, используемых для указания значений, в отображаемом списке пользователь может увидеть не самые последние значения.If the data that provides values changes rapidly, the list the user sees might not be the most current.
ВидимыйVisible Выберите этот параметр, чтобы отобразить параметр отчета в верхней части отчета при его выполнении.Select this option to display the report parameter at the top of the report when it is run. Этот параметр позволяет пользователям выбирать значения параметра во время выполнения.This option allows users to select parameter values at run time.
СкрытыйHidden Выберите этот параметр, чтобы скрыть параметр отчета в опубликованном отчете.Select this option to hide the report parameter in the published report. Значения параметра отчета еще можно задать в URL-адресе отчета, в определении подписки или на сервере отчетов.The report parameter values can still be set on a report URL, in a subscription definition, or on the report server.
ВнутренниеInternal Выберите этот параметр, чтобы скрыть параметр отчета.Select this option to hide the report parameter. В опубликованном отчете этот параметр отчета можно будет просмотреть только в определении отчета.In the published report, the report parameter can only be viewed in the report definition.
Доступные значенияAvailable values При наличии у параметра заданных доступных значений, допустимые значения всегда отображаются в виде раскрывающегося списка.If you have specified available values for a parameter, the valid values always appear as a drop-down list. Например, при указании доступных значений для параметра типа DateTime на панели параметра отображается раскрывающийся список дат, а не элемент управления "календарь".For example, if you provide available values for a DateTime parameter, a drop-down list for dates appears in the parameter pane instead of a calendar control.

Чтобы обеспечить согласование списка значений в отчете и вложенных отчетах, можно настроить параметр источника данных для использования одной транзакции во всех запросах в наборах данных, связанных с источником данных.To ensure that a list of values is consistent among a report and subreports, you can set an option on the data source to use a single transaction for all queries in the datasets that are associated with a data source.

Примечание о безопасности. Во всех отчетах, содержащих параметры типа данных Text, используйте список доступных значений (также называемый списком допустимых значений) и убедитесь в том, что у любого пользователя, выполняющего отчет, есть разрешения только на просмотр данных отчета.Security Note In any report that includes a parameter of data type Text, be sure to use an available values list (also known as a valid values list) and ensure that any user running the report has only the permissions necessary to view the data in the report. Дополнительные сведения см. в разделах Безопасность (построитель отчетов).For more information, see Security (Report Builder).
Значения по умолчаниюDefault values Задание значений по умолчанию с помощью запроса или статического списка.Set default values from a query or from a static list.

При наличии у всех параметров значений по умолчанию отчет запускается автоматически при первом просмотре.When each parameter has a default value, the report runs automatically on first view.
ДополнительноAdvanced Задайте атрибут определения отчета UsedInQuery, значение, указывающее, влияет этот параметр на данные отчета напрямую или косвенно.Set the report definition attribute UsedInQuery, a value that indicates whether this parameter directly or indirectly affects the data in a report.

Автоматически определять необходимость обновленияAutomatically determine when to refresh
Выберите этот параметр, если нужно, чтобы это значение определил обработчик отчетов.Choose this option when you want the report processor to determine a setting for this value. Значение равно True , если обработчик отчетов обнаруживает запрос набора данных с прямой или косвенной ссылкой на этот параметр или если у отчета есть вложенные отчеты.The value is True if the report processor detects a dataset query with a direct or indirect reference to this parameter, or if the report has subreports.

Всегда обновлятьAlways refresh
Выберите данный параметр, когда параметр отчета используется прямо или косвенно в запросе набора данных или в выражении параметра.Choose this option when the report parameter is used directly or indirectly in a dataset query or parameter expression. Этот параметр устанавливает UsedInQuery в значение True.This option sets UsedInQuery to True.

Не обновлятьNever refresh
Выберите данный параметр, когда параметр отчета не используется прямо или косвенно в запросе набора данных или в выражении параметра.Choose this option when the report parameter is not used directly or indirectly in a dataset query or parameter expression. Этот параметр устанавливает UsedInQuery в значение False.This option sets UsedInQuery to False.

Внимание! Параметр Не обновлять следует использовать осторожно.Caution Use Never Refresh with caution. На сервере отчетов значение UsedInQuery позволяет управлять режимами кэша для данных отчета и подготовленных отчетов и настройками параметров для отчетов-снимков.On the report server, UsedInQuery is used to help control cache options for report data and for rendered reports, and parameter options for snapshot reports. Если параметр Не обновлять задан неверно, это может привести к ошибкам в данных отчета или кэшируемых отчетах, а также к несогласованности данных в отчетах-снимках.If you set Never Refresh incorrectly, you could cause incorrect report data or reports to be cached, or cause a snapshot report to have inconsistent data. Дополнительные сведения см. в разделе Язык определения отчетов (службы SSRS).For more information, see Report Definition Language (SSRS).

Запрос набора данныхDataset Query

Чтобы отфильтровать данные в запросе набора данных, можно включить предложение ограничения, ограничивающее данные путем указания значений, которые нужно включить в результирующий набор или исключить из него.To filter data in the dataset query, you can include a restriction clause that limits the retrieved data by specifying values to include or exclude from the result set.

Используйте конструктор запросов для источника данных, чтобы помочь построить параметризованный запрос.Use the query designer for the data source to help build a parameterized query.

  • В запросах Transact-SQLTransact-SQL различные источники данных поддерживают различный синтаксис параметров.For Transact-SQLTransact-SQL queries, different data sources support different syntax for parameters. Поддерживаются диапазоны параметров, определяемые в запросе по положению или по имени.Support ranges from parameters that are identified in the query by position or by name. Дополнительные сведения см. в подразделах, посвященных типам внешних источников данных, в разделе Наборы данных отчетов (службы SSRS).For more information, see topics for specific external data source types in Report Datasets (SSRS). Чтобы создать параметризованный запрос, в конструкторе реляционных запросов нужно выбрать режим параметров для фильтра.In the relational query designer, you must select the parameter option for a filter to create a parameterized query. Дополнительные сведения см. в разделе Пользовательский интерфейс конструктора реляционных запросов (построитель отчетов).For more information, see Relational Query Designer User Interface (Report Builder).

  • Для запросов, основанных на таких многомерных источниках данных, как службы Microsoft SQL Server Analysis Services, SAP NetWeaver BI или Hyperion Essbase, можно указать, следует ли создавать параметры на основе фильтра, указанного в конструкторе запросов.For queries that are based on a multidimensional data source such as Microsoft SQL Server Analysis Services, SAP NetWeaver BI, or Hyperion Essbase, you can specify whether to create a parameter based on a filter that you specify in the query designer. См. подробнее о конструкторе отчетов в руководстве по средствам проектирования запросов (SSRS), соответствующих модулю обработки данных.For more information, see the query designer topic in Query Design Tools (SSRS) that corresponds to the data extension.

Управление параметрами опубликованного отчетаParameter Management for a Published Report

При разработке отчета параметры отчета сохраняются в определении отчета.When you design a report, report parameters are saved in the report definition. При публикации отчета сохранение параметров отчета и управление ими осуществляется отдельно от определения отчета.When you publish a report, report parameters are saved and managed separately from the report definition.

Для опубликованного отчета можно использовать следующее.For a published report, you can use the following:

  • Свойства параметров отчета.Report parameter properties. Изменить значения параметров отчета напрямую на сервере отчетов, независимо от определения отчета.Change report parameter values directly on the report server independently from the report definition.

  • Кэшированные отчеты.Cached reports. Для создания плана кэширования для отчета все параметры должны иметь значения по умолчанию.To create a cache plan for a report, each parameter must have a default value. Дополнительные сведения см. в разделе Кэширование отчетов (службы SSRS), это был единственный способ предварительной загрузки кэша.For more information, see Caching Reports (SSRS).

  • Общие наборы данных в кэше.Cached shared datasets. Для создания плана кэширования для общего набора данных все параметры должны иметь значения по умолчанию.To create a cache plan for a shared dataset, each parameter must have a default value. Дополнительные сведения см. в разделе Кэширование отчетов (службы SSRS), это был единственный способ предварительной загрузки кэша.For more information, see Caching Reports (SSRS).

  • Связанные отчеты.Linked reports. Можно создавать связанные отчеты с заранее заданными значениями параметров для фильтрации данных для разных целевых групп.You can create linked reports with preset parameter values to filter data for different audiences. Дополнительные сведения см. в разделе Создание связанного отчета.For more information, see Create a Linked Report.

  • Подписки на отчет.Report subscriptions. Можно указывать значения параметров для фильтрации данных и доставлять отчеты по подпискам.You can specify parameter values to filter data and deliver reports through subscriptions. Дополнительные сведения см. в разделе Подписки и доставка (службы Reporting Services).For more information, see Subscriptions and Delivery (Reporting Services).

  • Доступ по URL-адресу.URL access. Значения параметров можно указывать в URL-адресе отчета.You can specify parameter values in a URL to a report. Также можно выполнять отчеты и указывать значения параметра при помощи доступа через URL-адрес.You can also run reports and specify parameter values using URL access. Дополнительные сведения см. в разделе Доступ по URL-адресу (SSRS).For more information, see URL Access (SSRS).

При повторной публикации определения отчета свойства параметров для опубликованного отчета сохраняются.Parameter properties for a published report are preserved if you republish the report definition. Если определение отчета повторно публикуется как тот же отчет, а имена параметров и типы данных не изменяются, то параметры свойств сохраняются.If the report definition is republished as the same report, and parameter names and data types remain the same, your property settings are retained. При добавлении или удалении параметров из определения отчета, а также при изменении типа данных или имени существующего параметра, возможно, в опубликованном отчете потребуется изменить свойства соответствующего параметра.If you add or delete parameters in the report definition, or change the data type or name of an existing parameter, you may need to change the parameter properties in the published report.

Не все параметры можно изменять всегда.Not all parameters can be modified in all cases. Если параметр отчета получает значение по умолчанию от запроса набора данных, это значение не может быть изменено для опубликованного отчета и не может быт изменено на сервере отчетов.If a report parameter gets a default value from a dataset query, that value cannot be modified for a published report and cannot be modified on the report server. Значение, применяемое во время выполнения, определяется при выполнении запроса либо при вычислении этого выражения для параметров на основе выражения.The value that is used at run time is determined when the query runs, or in the case of expression-based parameters, when the expression is evaluated.

Параметры выполнения отчета могут влиять на обработку параметров.Report execution options can affect how parameters are processed. В отчете, который выполняется как моментальный снимок, нельзя использовать параметры, полученные из запроса, если только запрос не содержит значения по умолчанию для этих параметров.A report that runs as a snapshot cannot use parameters that are derived from a query unless the query includes default values for the parameters.

Параметры подпискиParameters for a Subscription

Можно определить подписку на отчет по запросу или на моментальный снимок и указать значения параметров для использования в процессе обработки подписки.You can define a subscription for an on demand or for a snapshot and specify parameter values to use during subscription processing.

  • Отчет по запросу.On-demand report. Для отчета по запросу каждому из указанных для отчета параметров можно задать значение, отличное от опубликованного.For an on-demand report, you can specify a different parameter value than the published value for each parameter listed for the report. Например, предположим, что имеется отчет службы обработки запросов, который использует параметр Период времени для возвращения запросов клиентской службы на текущий день, неделю или месяц.For example, suppose you have a Call Service report that uses a Time Period parameter to return customer service requests for the current day, week, or month. Если значение параметра по умолчанию для отчета установлено на сегодня, ваша подписка может использовать другое значение параметра (такое как неделя или месяц) для создания отчета, содержащего цифры за неделю или месяц.If the default parameter value for the report is set to today, your subscription can use a different parameter value (such as week or month) to produce a report that contains weekly or monthly figures.

  • Моментальный снимок.Snapshot. Подписка должна использовать значения параметров, определенные для моментального снимка.For a snapshot, your subscription must use the parameter values defined for the snapshot. Ваша подписка не может переопределять значение параметра, определенное для моментального снимка.Your subscription cannot override a parameter value that is defined for a snapshot. Например, предположим, что производится подписка на отчет о продажах западного региона, выполняемый как моментальный снимок отчета, а моментальный снимок указывает Западный в качестве значения параметра региона.For example, suppose you are subscribing to a Western regional sales report that runs as a report snapshot, and the snapshot specifies Western as a regional parameter value. В таком случае, если будет создана подписка на этот отчет, необходимо использовать значение параметра Западный в вашей подписке.In this case, if you create a subscription to this report, you must use the parameter value Western in your subscription. Для обеспечения наглядной индикации того, что параметр не учитывается, полям параметров на странице подписки присваивается атрибут «только для чтения».To provide a visual indication that the parameter is ignored, the parameter fields on the subscription page are set to read-only fields.

    Параметры выполнения отчета могут влиять на обработку параметров.Report execution options can affect how parameters are processed. Параметризованные отчеты, выполняемые как моментальные снимки отчета, используют значения параметров, определенные для моментального снимка отчета.Parameterized reports that run as report snapshots use the parameter values defined for the report snapshot. Значения параметров определяются в отчете на странице свойств параметров.Parameter values are defined in the parameter properties page of the report. В отчете, который выполняется как моментальный снимок, нельзя использовать параметры, полученные из запроса, если только запрос не содержит значения по умолчанию для этих параметров.A report that runs as a snapshot cannot use parameters that are derived from a query unless the query includes default values for the parameters.

    Если значение параметра в моментальном снимке отчета изменяется после того, как подписка определена, сервер отчетов делает подписку недействительной.If a parameter value changes in the report snapshot after the subscription is defined, the report server deactivates the subscription. Недействительность подписки указывает на то, что отчет был изменен.Deactivating the subscription indicates that the report has been modified. Для активации подписки откройте и затем сохраните подписку.To activate the subscription, open and then save the subscription.

Примечание

Управляемые данными подписки могут использовать значения параметров, полученные из источника данных подписчика.Data-driven subscriptions can use parameter values that are obtained from a subscriber data source. Дополнительные сведения см. в разделе Использование внешнего источника данных для данных подписчика (управляемая данными подписка).For more information, see Use an External Data Source for Subscriber Data (Data-Driven Subscription).

Дополнительные сведения см. в разделе Подписки и доставка (службы Reporting Services).For more information, see Subscriptions and Delivery (Reporting Services).

Параметры и защита данныхParameters and Securing Data

Распространять параметризованные отчеты, содержащие конфиденциальные или важные сведения, следует очень осторожно.Use caution when distributing parameterized reports that contain confidential or sensitive information. Пользователь может просто присвоить параметру отчета другое значение, что приведет к раскрытию этих сведений.A user can easily replace a report parameter with a different value, resulting in information disclosure that you did not intend.

Безопасной альтернативой применению параметров с данными о работниках или с персональными данными может быть использование данных на основе выражений, в которые включено поле UserID из коллекции пользователей.A secure alternative to using parameters for employee or personal data is to select data based on expressions that include the UserID field from the Users collection. Коллекция пользователей позволяет проверить подлинность пользователя, выполняющего отчет, и использовать его идентификатор для получения пользовательских данных.The Users collection provides a way to get the identity of the user running the report, and use that identity to retrieve user-specific data.

Важно!

В любом отчете, содержащем параметры типа String, используйте список доступных значений (иначе называемый списком допустимых значений), при этом у любого пользователя, запускающего отчеты, должно быть разрешение только на просмотр данных в отчете.In any report that includes a parameter of type String, be sure to use an available values list (also known as a valid values list) and ensure that any user running the report has only the permissions necessary to view the data in the report. При определении параметра типа Stringпользователю предоставляется текстовое поле, в которое можно ввести любое значение.When you define a parameter of type String, the user is presented with a text box that can take any value. Список допустимых значений ограничивает значения, которые могут быть введены.An available values list limits the values that can be entered. Если параметр отчета привязан к параметру набора данных и вы не используете доступный список значений, пользователь отчета может напечатать синтаксис SQL в текстовое поле, возможно открыв отчет и ваш сервер атаке путем внедрения кода SQL.If the report parameter is tied to a dataset parameter and you do not use an available values list, it is possible for a report user to type SQL syntax into the text box, potentially opening the report and your server to a SQL injection attack. Наличие у этого пользователя достаточных разрешений для выполнения новой инструкции SQL может привести к нежелательным последствиям на сервере.If the user has sufficient permissions to execute the new SQL statement, it may produce unwanted results on the server.

Если параметр отчета не привязан к параметру набора данных и значения параметра включена в отчет, пользователь отчета может напечатать синтаксис выражения или URL в значение параметра и преобразовать отчет в Excel или HTML.If a report parameter is not tied to a dataset parameter and the parameter values are included in the report, it is possible for a report user to type expression syntax or a URL into the parameter value, and render the report to Excel or HTML. Если затем другой пользователь при просмотре отчета щелкнет содержимое параметра, он может неумышленно выполнить вредоносный скрипт или перейти по ссылке.If another user then views the report and clicks the rendered parameter contents, the user may inadvertently execute the malicious script or link.

Чтобы снизить риск неумышленного запуска вредоносных скриптов, открывайте отчеты, готовые для просмотра, только из проверенных источников.To mitigate the risk of inadvertently running malicious scripts, open rendered reports only from trusted sources. Дополнительные сведения о защите отчетов см. в разделе Обеспечение безопасности отчетов и ресурсов.For more information about securing reports, see Secure Reports and Resources.

Учебник. Добавление параметра к отчету (построитель отчетов)Tutorial: Add a Parameter to Your Report (Report Builder)

Понятия параметров отчетаReport Parameters Concepts

Образцы отчетов (построитель отчетов и службы SSRS)Report Samples (Report Builder and SSRS)

Использование выражений в отчетах (построитель отчетов и службы SSRS)Expression Uses in Reports (Report Builder and SSRS)

Выражения (построитель отчетов и службы SSRS)Expressions (Report Builder and SSRS)

Фильтрация, группирование и сортировка данных (построитель отчетов и службы SSRS)Filter, Group, and Sort Data (Report Builder and SSRS)

Безопасность (построитель отчетов)Security (Report Builder)

Интерактивная сортировка, схемы документов и ссылки (построитель отчетов и службы SSRS)Interactive Sort, Document Maps, and Links (Report Builder and SSRS)

Детализация, углубленная детализация, вложенные отчеты и вложенные области данных (построитель отчетов и службы SSRS)Drillthrough, Drilldown, Subreports, and Nested Data Regions (Report Builder and SSRS)