Implantar uma extensão de renderização

Depois de escrever e compilar sua extensão de renderização de relatório do Reporting Services em uma biblioteca do .NET Framework, você precisa torná-la detectável pelo servidor de relatório e pelo Designer de Relatórios. Para fazer isso, copie a extensão para o diretório apropriado e adicione entradas para os arquivos de configuração Reporting Services apropriados.

Elemento de extensão de renderização do arquivo de configuração

Depois que uma extensão de renderização é compilada em um .DLL, você adiciona uma entrada ao arquivo rsreportserver.config. Por padrão, o local é %ProgramFiles%\Microsoft SQL Server\MSRS10_50.\<InstanceName>\Reporting Services\ReportServer. O elemento pai é \<Render>. No elemento Render, é um elemento Extension para cada extensão de renderização. O elemento Extension contém dois atributos, Name e Type.

A tabela a seguir descreve os atributos para o elemento Extension para as extensões de renderização:

Atributo Descrição
Nome Um nome exclusivo para a extensão. O comprimento máximo do atributo Name é de 255 caracteres. O nome deve ser exclusivo entre todas as entradas do elemento Extension de um arquivo de configuração. Se um nome duplicado estiver presente, o servidor de relatório retornará um erro.
Tipo Uma lista separada por vírgulas que inclui o namespace totalmente qualificado junto com o nome do assembly.
Visível Um valor false indica que a extensão de renderização não deve estar visível nas interfaces do usuário. Se o atributo não estiver incluído, o valor padrão será true.
LogAllExecutionRequests Um valor de false indica que uma entrada está registrada apenas para a primeira execução do relatório em uma sessão. Se o atributo não estiver incluído, o valor padrão será true.

Esta configuração determina, por exemplo, se é preciso registrar uma entrada apenas para a primeira página renderizada de um relatório (quando false) ou uma entrada para cada página renderizada do relatório (quando true).

Para obter mais informações, consulte Arquivo de configuração RsReportServer.config.

Implantar a extensão no servidor de relatório

O servidor de relatório usa extensões de renderização para exportar relatórios para outros formatos. Implante o seu assembly de extensão de renderização para o servidor de relatório como um assembly privado. Também será preciso criar uma entrada no arquivo de configuração do servidor de relatório, rsreportserver.config.

Implantar o assembly

  1. Copie o assembly do local de preparação para o diretório bin do servidor de relatório no qual você deseja usar a extensão de renderização. O local padrão do diretório Bin do servidor de relatório é %ProgramFiles%\Microsoft SQL Server\MSRS10_50.\<InstanceName>\Reporting Services\ReportServer\Bin.

  2. Depois da cópia do arquivo de assembly, abra o arquivo rsreportserver.config. O arquivo rsreportserver.config também está localizado no diretório bin do servidor de relatório. Você precisa criar uma entrada no arquivo de configuração para o seu arquivo de assembly de extensão. Abra o arquivo com o Visual Studio ou um editor de texto simples.

    Para obter mais informações, consulte Arquivo de configuração RsReportServer.config.

  3. Localize o elemento Render no arquivo Rsreportserver.config. Uma entrada para a sua extensão recém-criada deve ser inserida no seguinte local:

    <Extensions>  
       <Render>  
          <extension configuration>  
       </Render>  
    </Extensions>  
    
  4. Adicione uma entrada para sua extensão de renderização. A sua entrada deve incluir um elemento que possui valores para Name e Typee poderia ser assim:

    <Extension Name="My Rendering Extension Name" Type="CompanyName.ExtensionName.MyRenderingProvider, AssemblyName" />  
    

    O valor de Name é o nome exclusivo da extensão de renderização. O valor de Type é uma lista separada por vírgula que inclui uma entrada para o namespace totalmente qualificado da implementação do IRenderingExtension, seguida pelo nome do assembly (não incluindo a extensão de arquivo .dll). Por padrão, as extensões de renderização ficam visíveis. Para ocultar uma extensão de interfaces do usuário, como o Gerenciador de Relatórios, adicione um atributo Visible ao elemento Extension e defina-o como false.

Verificar a implantação

Você também pode abrir o Gerenciador de Relatórios e verificar se a sua extensão foi incluída na lista de tipos de exportação disponíveis para um relatório.