Развертывание модуля подготовки отчетов
После того как модуль подготовки отчетов служб Службы Reporting Services был написан и скомпилирован в библиотеку .NET Framework, необходимо сделать его видимым для сервера отчетов и конструктора отчетов. Это можно сделать, скопировав модуль в подходящий каталог и добавив записи в подходящие файлы конфигурации служб Службы Reporting Services.
Настройка элемента модуля подготовки отчетов в файле
После компиляции модуля подготовки отчетов в формат .DLL в файл rsreportserver.config добавляется запись. По умолчанию этот файл находится в папке %ProgramFiles%\Microsoft SQL Server\MSRS10_50.<ИмяЭкземпляра>\Reporting Services\ReportServer. Родительским элементом является <Render>. В элементе Render находятся элементы Extension для каждого модуля подготовки отчетов. Элемент Extension содержит два атрибута — Name и Type.
В следующей таблице описываются атрибуты элемента Extension для модулей подготовки отчетов.
Атрибут |
Описание |
---|---|
Name |
Уникальное имя элемента Extension. Длина атрибута Name не должна превышать 255 символов. Имя должно быть уникальным среди всех элементов, вложенных в элемент Extensions файла конфигурации. Если присутствует повторяющееся имя, сервер отчетов возвращает ошибку. |
Type |
Список с разделителями-запятыми, содержащий полное пространство имен и имя сборки. |
Visible |
Значение false показывает, что модуль подготовки отчетов не должен быть видим в пользовательских интерфейсах. Если атрибут не указан, по умолчанию используется значение true. |
LogAllExecutionRequests |
Значение false показывает, что запись регистрируется только для первого выполнения отчета в сеансе. Если атрибут не указан, по умолчанию используется значение true. Например, этот параметр показывает, нужно ли регистрировать запись только для первой страницы, которая готовится к просмотру в составе отчета (значение false), или нужно создавать запись для каждой страницы, которая готовится к просмотру в составе отчета (значение true). |
Дополнительные сведения см. в разделе Файл конфигурации RSReportServer.
Развертывание модуля на сервере отчетов
Сервер отчетов использует модули подготовки отчетов для экспорта отчетов в других форматах. Сборка модуля подготовки отчетов развертывается на сервере отчетов как закрытая сборка. Нужно также внести запись в файл конфигурации сервера отчетов rsreportserver.config.
Развертывание сборки
Скопируйте сборку из промежуточной папки в каталог bin сервера отчетов, на котором будет использоваться модуль подготовки отчетов. По умолчанию каталог bin сервера отчетов располагается в %ProgramFiles%\Microsoft SQL Server\MSRS10_50.<InstanceName>\Reporting Services\ReportServer\Bin.
Скопировав файл сборки, откройте файл rsreportserver.config. Файл rsreportserver.config также расположен в каталоге bin сервера отчетов. Необходимо создать запись в файле конфигурации для файла сборки модуля. Файл можно открыть с помощью среды Visual Studio или воспользоваться простым текстовым редактором.
Дополнительные сведения см. в разделе Файл конфигурации RSReportServer.
В файле Rsreportserver.config найдите элемент Render. Запись для созданного модуля должна находиться в следующем разделе файла:
<Extensions> <Render> <extension configuration> </Render> </Extensions>
Добавьте запись для модуля подготовки отчетов. В новую запись должен входить элемент, для которого заданы параметры Name и Type, например
<Extension Name="My Rendering Extension Name" Type="CompanyName.ExtensionName.MyRenderingProvider, AssemblyName" />
Значение атрибута Name является уникальным именем модуля подготовки отчетов. Значение атрибута Type — это список с разделителями-запятыми, который содержит запись пространства имен с полным именем класса IRenderingExtension, за которым следует имя сборки (без расширения DLL в имени файла). По умолчанию модули подготовки отчетов являются видимыми. Чтобы скрыть модуль в таких пользовательских интерфейсах, как диспетчер отчетов, добавьте атрибут Visible к элементу Extension и задайте для него значение false.
Проверка развертывания
Проверить, успешно ли развернут модуль подготовки отчетов на сервере отчетов, можно с помощью метода ListExtensions(ExtensionTypeEnum) веб-службы. Можно также открыть диспетчер отчетов и убедиться, что модуль включен в список доступных типов экспорта отчета.