Visão geral das extensões de renderização
Uma extensão de renderização é um componente ou um módulo de um servidor de relatório que transforma dados de relatório e informações de layout para um formato específico do dispositivo. O SQL Server Reporting Services inclui várias extensões de renderização: HTML, Excel, Word, PowerPoint, CSV ou Texto, XML, Imagem, Feed de Dados e PDF. Você pode criar outras extensões de renderização para gerar relatórios em outros formatos.
Observação
Para determinar quais extensões de renderização estão disponíveis, exiba a lista das extensões instaladas no arquivo RSReportServer.config.
A tabela a seguir descreve as extensões de renderização incluídas no Reporting Services.
Nome da extensão | Descrição |
---|---|
WORDOPENXML | Renderizar um relatório no Microsoft Word como um arquivo DOCX. O formato é mostrado como Word na lista suspensa Exportar da barra de ferramentas do relatório. |
WORD | Renderizar um relatório no Microsoft Word como um arquivo DOC. O formato não é mostrado na lista suspensa Exportar da barra de ferramentas do relatório, pois está incluído para compatibilidade com versões anteriores. |
EXCELOPENXML | Renderiza um relatório no Microsoft Excel como um arquivo XLSX. O formato é mostrado como Excel na lista suspensa Exportar da barra de ferramentas do relatório. |
EXCEL | Renderiza um relatório no Microsoft Excel como um arquivo XLS. O formato não é mostrado na lista suspensa Exportar da barra de ferramentas do relatório, pois está incluído para compatibilidade com versões anteriores. |
PPTX | Renderiza um relatório no PowerPoint como um arquivo PPTX. O formato é mostrado como PowerPoint na lista suspensa Exportar da barra de ferramentas do relatório. |
Renderiza um relatório no PDF. | |
IMAGE | Renderiza um relatório em um formato orientado para páginas. O formato é mostrado como arquivo TIFF na lista suspensa Exportar da barra de ferramentas do relatório. |
MHTML (parte da extensão de renderização HTML) | Renderiza um relatório em MHTML. O relatório é aberto no navegador. O formato é mostrado como MHTML (arquivo da Web) na lista suspensa Exportar da barra de ferramentas do relatório. |
CSV | Renderiza um relatório em um formato delimitado por vírgula. O relatório é aberto em uma ferramenta de visualização associada a formatos de arquivo CSV. O formato é mostrado como CSV (delimitado por vírgula) na lista suspensa Exportar da barra de ferramentas do relatório. |
XML | Renderiza um relatório em XML. O relatório é aberto em um navegador. Transformações extras aplicadas a essa saída XML podem ser uma maneira econômica de evitar o desenvolvimento de sua própria extensão de renderização. O formato é mostrado como arquivo XML com dados de relatório na lista suspensa Exportar da barra de ferramentas do relatório. |
ATOM | Renderiza um relatório no formato de feed de dados como um arquivo ATOMSVC. O formato é mostrado como Feed de dados na lista suspensa Exportar da barra de ferramentas do relatório. |
HTML4.0 (parte da extensão de renderização HTML) | O HTML4.0 será usado se o navegador não oferecer suporte a HTML5. |
HTML5 (parte da extensão de renderização HTML) | HTML5 é o formato usado para renderizar inicialmente o relatório no navegador. Se o seu navegador suporta HTML5, esse é o formato usado. Caso contrário, HTML 4.0 é usado. |
RPL | RPL é o formato intermediário usado pelo servidor de relatório e é a extensão de renderização padrão. |
NULL | Não renderiza um relatório em um formato específico. Essa extensão de renderização é útil para colocar relatórios em cache. A renderização nula deve ser usada com uma execução ou entrega agendada. |
Para obter mais informações sobre os formatos recomendados e seus usos, consulte Exportar relatórios (Construtor de Relatórios e SSRS).
Cada uma das extensões de renderização implementadas pela Microsoft e enviadas com o Reporting Services usa um conjunto comum de interfaces. Esse conjunto comum de interfaces garante que cada extensão implemente funcionalidade comparável e reduza a complexidade do código de renderização no núcleo do servidor de relatório.
Modelo de objeto de renderização
Quando um relatório é processado, o resultado é um modelo de objeto publicamente exposto conhecido como ROM (Modelo de Objeto de Renderização). O Modelo de Objeto de Renderização é uma coleção de classes que definem os conteúdos, o layout e os dados de um relatório que foi processado. O ROM está disponível para desenvolvedores que queiram criar, desenvolver e implantar extensões de renderização personalizadas para o Reporting Services. O ROM é gerado quando o servidor de relatório processa a definição XML de um relatório junto com os dados de relatório definidos pelo usuário. Quando o processamento é concluído, o modelo de objeto público é usado por uma extensão de renderização para definir a saída do relatório. As classes públicas disponíveis do ROM são definidas no namespace Microsoft.ReportingServices.OnDemandReportRendering.
Escrever extensões de renderização personalizadas
Antes de decidir criar uma extensão de renderização personalizada, avalie alternativas mais simples. Você pode:
Personalizar a saída renderizada especificando configurações de informações de dispositivo para extensões existentes.
Adicione formatação personalizada e recursos de apresentação combinando XSLT (Transformações XSL) com a saída do formato de renderização XML.
Escrever uma extensão de renderização personalizada é difícil. Normalmente, uma extensão de renderização deve dar suporte a todas as combinações possíveis de elementos de relatório e exige que você implemente centenas de classes, de interfaces, de métodos e de propriedades. Se você precisar renderizar um relatório em um formato que não esteja incluído no Reporting Services e decidir escrever sua própria implementação de código gerenciado de uma extensão de renderização, o código da extensão de renderização deverá implementar a interface Microsoft.ReportingServices.OnDemandReportRendering.IRenderingExtension , que é exigida pelo servidor de relatório.