Compartir a través de


Introducción a las extensiones de representación

Una extensión de representación es un componente o módulo de un servidor de informes que transforma los datos de informes y la información de diseño en un formato específico del dispositivo. SQL Server Reporting Services incluye varias extensiones de representación: HTML, Excel, Word, PowerPoint, CSV o Text, XML, Image, Data Feed y PDF. Puede crear otras extensiones de representación para generar informes en otros formatos.

Nota:

Para determinar qué extensiones de representación están disponibles, puede ver la lista de extensiones instaladas en el archivo RSReportServer.config.

En la tabla siguiente se describen las extensiones de representación que se incluyen con Reporting Services.

Nombre de la extensión Descripción
WORDOPENXML Representar un informe en Microsoft Word como un archivo DOCX. El formato se muestra como Word en la lista desplegable Exportar de la barra de herramientas del informe.
WORD Representar un informe en Microsoft Word como un archivo DOC. El formato no se muestra en la lista desplegable Exportar de la barra de herramientas del informe, ya que se incluye para la compatibilidad con versiones anteriores.
EXCELOPENXML Representa un informe en Microsoft Excel como un archivo XLSX. El formato se muestra como Excel en la lista desplegable Exportar de la barra de herramientas del informe.
EXCEL Representa un informe en Microsoft Excel como un archivo XLS. El formato no se muestra en la lista desplegable Exportar de la barra de herramientas del informe, ya que se incluye para la compatibilidad con versiones anteriores.
PPTX Representa un informe en PowerPoint como un archivo PPTX. El formato se muestra como PowerPoint en la lista desplegable Exportar de la barra de herramientas del informe.
PDF Representa un informe en el PDF.
IMAGE Representa un informe en formato orientado a la página. El formato se muestra como archivo TIFF en la lista desplegable Exportar de la barra de herramientas del informe.
MHTML (parte de la extensión de representación en HTML) Representa un informe en MHTML. El informe se abre en el explorador. El formato se muestra como MHTML (archivo web) en la lista desplegable Exportar de la barra de herramientas del informe.
CSV Representa un informe en formato delimitado por comas. El informe se abre en una herramienta de visualización asociada a los formatos de archivo CSV. El formato se muestra como CSV (delimitado por comas) en la lista desplegable Exportar de la barra de herramientas del informe.
XML Representa un informe en XML. El informe se abre en un explorador. Las transformaciones adicionales aplicadas a esta salida XML pueden ser una manera rentable de evitar el desarrollo de su propia extensión de representación. El formato se muestra como archivo XML con datos de informe en la lista desplegable Exportar de la barra de herramientas del informe.
ATOM Representa un informe en formato de fuente de distribución de datos como un archivo ATOMVC. El formato se muestra como fuente de distribución de datos en la lista desplegable Exportar de la barra de herramientas del informe.
HTML4.0 (parte de la extensión de representación HTML) HTML4.0 se usa si el explorador no admite HTML5.
HTML5 (parte de la extensión de representación HTML) HTML5 es el formato usado inicialmente para representar el informe en el explorador. Si el explorador admite HTML5, es el formato que se usa. De lo contrario, se usa HTML 4.0.
RPL RPL es el formato intermedio que usa el servidor de informes y es la extensión de representación predeterminada.
NULL No representa un informe en un formato específico. Esta extensión de representación es útil para colocar los informes en la memoria caché. La representación nula debe usarse con una ejecución programada o entrega.

Para obtener más información sobre los formatos recomendados y sus usos, consulte Exportación de informes (Generador de informes y SSRS).

Cada una de las extensiones de representación que se implementan mediante Microsoft y se distribuyen con Reporting Services usa un conjunto común de interfaces. Este conjunto común de interfaces garantiza que cada extensión implemente una funcionalidad comparable y reduzca la complejidad del código de representación en el núcleo del servidor de informes.

Modelo de objetos de representación

Cuando se procesa un informe, el resultado es un modelo de objetos expuesto públicamente conocido como Modelo de objetos de representación (ROM). El Modelo de objetos de representación es una colección de clases que definen el contenido, diseño y datos de un informe que se ha procesado. El ROM está disponible para los programadores que desean diseñar, desarrollar e implementar las extensiones de representación personalizadas para Microsoft SQL Server Reporting Services. ROM se genera cuando el servidor de informes procesa la definición XML de un informe junto con los datos del mismo definidos por el usuario. Cuando el procesamiento se completa, una extensión de representación utiliza el modelo de objetos público para definir la salida del informe. Las clases públicas disponibles del ROM se definen en el espacio de nombres Microsoft.ReportingServices.OnDemandReportRendering.

Escritura de extensiones de representación personalizadas

Antes de decidir crear una extensión de representación personalizada, debería evaluar alternativas más simples. Puede:

  • Personalizar la salida representada especificando la configuración de la información de los dispositivos para las extensiones existentes.

  • Agregar formato personalizado y características de presentación combinando Transformaciones XSL (XSLT) con la salida del formato de representación XML.

Escribir una extensión de representación personalizada es difícil. Normalmente, debe admitir todas las combinaciones posibles de elementos de informe y requiere que implemente centenares de clases, interfaces, métodos y propiedades. Si debe representar un informe en un formato que no esté incluido en Reporting Services y decidir escribir su propia implementación de código administrado de una extensión de representación, el código de extensión de representación debe implementar la interfaz Microsoft.ReportingServices.OnDemandReportRendering.IRenderingExtension , que requiere el servidor de informes.