2012-03-23 2 views

ответ

32

Внутренние параметры в SSRS являются параметрами, которые не настраиваются конечным пользователем во время выполнения.

Это зависит от Скрытый параметр, который пользователю не предлагается предоставлять, но он все равно может быть настроен через URL-адрес сервера отчетов.

Для получения дополнительной информации см. "Creating Report Parameters" на MSDN.

Одно из возможных способов использования их в сочетании с Report Viewer control. Страница ASP.Net может содержать элемент управления средством просмотра отчетов и использовать внутренние параметры в коде для предоставления значений в отчете, которые конечный пользователь не может контролировать, например, UserID.

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

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

+1

Я играю с использованием UserId для отчетов, созданных с помощью сервера отчетов, для фильтрации информации в отчете в зависимости от того, кто ее просматривает. Примеры, которые я нашел до сих пор, не используют скрытые параметры. Было бы неплохо использовать скрытый параметр? ... Да, но мне нужно указать значение по умолчанию? ... По умолчанию может быть переменная UserID? – whytheq

+2

@Whytheq, если вы используете «скрытый» параметр, все равно было бы возможно, чтобы Пользователь выдавал себя за другого пользователя, редактируя URL-адрес. – TomG

+0

@TomG thanks - так в основном эмпирическое правило заключается в том, что пользователю никогда не нужно знать значение параметра, а затем сделать его внутренним? – whytheq

2

Если вы установили параметр Internal, он не будет отображаться каким-либо образом, кроме определения отчета (запрос набора данных или хранимая процедура). Другими словами, Internal Parameter - это параметр, который нельзя изменить во время выполнения. Конечный пользователь опубликованного отчета никогда не увидит это как параметр. Но издатель может изменять значение параметра в любое время в параметрах управления отчета. Вы можете найти функциональность внутреннего параметра с примером в этой ссылке: https://sqlserverreportingservices.wordpress.com/2012/11/16/using-internal-parameters-to-filter-data-without-user-intervention/

1

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