Как развертывание модуля обработки данных в конструкторе отчетов

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

Развертывание сборки модуля обработки данных

  1. Скопируйте конкретную сборку из промежуточной папки в каталог конструктора отчетов. По умолчанию каталог исполняемых файлов конструктора отчетов расположен в папке C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies.

  2. После того, как будет скопирован файл сборки, откройте файл RSReportDesigner.config. Файл RSReportDesigner.config также находится в каталоге конструктора отчетов. Необходимо внести запись в этот файл конфигурации для файла сборки развертываемого модуля обработки данных. Файл конфигурации можно открыть с помощью среды Microsoft Visual Studio или воспользоваться простым текстовым редактором (таким как Блокнот).

  3. Найдите в файле RSReportDesigner.config элемент Data. Запись для вновь созданного модуля обработки данных необходимо создать в месте, указанном ниже.

    <Extensions>
       <Data>
          <Your extension configuration information goes here>
       </Data>
    </Extensions>
    
  4. Добавьте для модуля обработки данных запись, которая включает элемент Extension со значениями атрибутов Name, Type и Visible. Эта запись должна иметь следующий вид:

    <Extension Name="ExtensionName" Type="CompanyName.ExtensionName.MyConnectionClass, AssemblyName" />
    

    По умолчанию Name — уникальное имя модуля обработки данных. Значение параметра Type представляет собой список с разделителями-запятыми, включающий полное имя пространства имен для класса, реализующего интерфейсы IExtension и IDbConnection, а затем имя сборки поставщика (без расширения DLL). По умолчанию модули обработки данных являются видимыми. Чтобы скрыть модуль от пользовательских интерфейсов, таких как конструктор отчетов, добавьте атрибут Visible к элементу Extension и задайте для него значение false.

  5. Наконец, добавьте для пользовательской сборки группу кода, которая предоставляет разрешение FullTrust для конкретного модуля. С этой целью добавьте указанную группу кода в файл rspreviewpolicy.config, который по умолчанию находится в папке C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies. Пример группы кода показан ниже.

    <CodeGroup class="UnionCodeGroup"
       version="1"
       PermissionSetName="FullTrust"
       Name="MyExtensionCodeGroup"
       Description="Code group for my data processing extension">
          <IMembershipCondition class="UrlMembershipCondition"
             version="1"
             Url="C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\MyExtensionAssembly.dll"
           />
    </CodeGroup>
    

URL-членство — это лишь одно из множества условий членства, которые могут быть заданы для модуля обработки данных. Дополнительные сведения об управлении доступом для кода в службах Службы SQL Server 2005 Reporting Services см. в разделе Разработка безопасных приложений (службы Reporting Services).

Обычный конструктор запросов

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

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

  • Добавьте приведенную ниже запись в файл конфигурации RSReportDesigner.config вслед за элементом Designer, заменив атрибут Name именем, которое было указано в предыдущих записях.

    <Extension Name="ExtensionName" Type="Microsoft.ReportingServices.QueryDesigners.GenericQueryDesigner,Microsoft.ReportingServices.QueryDesigners"/>
    

Проверка развертывания

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