Personalizar parámetros de extensión de renderizado en RSReportServer.Config

Puedes especificar parámetros de extensión de renderizado en el archivo de configuración RSReportServer para anular el comportamiento predeterminado de renderizado de informes en informes que se ejecutan en un servidor de informes de Reporting Services. Puedes modificar los parámetros de extensión de renderizado para lograr los siguientes objetivos:

  • Cambia cómo aparece el nombre de la extensión de renderizado en la lista de Exportación de la barra de informes (por ejemplo, para cambiar "Archivo web" por "MHTML"), o localiza el nombre a otro idioma.

  • Crea múltiples instancias de la misma extensión de renderizado para soportar diferentes opciones de presentación de informes (por ejemplo, una versión en modo retrato y horizontal de la extensión de renderizado de Imagen).

  • Cambia los parámetros de extensión de renderizado por defecto para que usen valores diferentes (por ejemplo, la extensión de renderizado de imagen usa TIFF como formato de salida por defecto; puedes modificar los parámetros de extensión para usar EMF en su lugar).

Cambiar los parámetros de extensión de renderizado solo afecta a las operaciones de renderizado en el servidor de informes. No puedes sobrescribir la configuración de extensiones de renderizado en la vista previa del informe en Diseñador de informes.

Especificar los parámetros de extensión de renderizado en los archivos de configuración afecta a las extensiones de renderizado a nivel global. Los ajustes en los archivos de configuración se usan en lugar de los valores por defecto siempre que se emplea una extensión de renderizado concreta. Si quieres establecer parámetros de extensión de renderizado para un informe u operación de renderizado específica, debes especificar la información del dispositivo de forma programática usando el Render método o especificando la configuración de información del dispositivo en una URL de informe. Para más información sobre cómo especificar la configuración de información del dispositivo para una operación de renderizado y para ver la lista completa de ajustes de información del dispositivo, consulte Pasar ajustes de información del dispositivo a extensiones de renderizado.

Encuentra y modifica RSReportServer.config

Los ajustes de configuración para los formatos de salida de informes se especifican como parámetros de extensión de renderizado en el archivo RSReportServer.config. Para especificar los parámetros de extensión de renderizado en los archivos de configuración, debes saber cómo definir las estructuras XML que establecen los parámetros de renderizado. Hay dos estructuras XML que puedes modificar:

  • El elemento OverrideNames define el nombre de visualización y el lenguaje de la extensión de renderizado.

  • La estructura XML de DeviceInfo define la configuración de información del dispositivo que utiliza una extensión de renderizado. La mayoría de los parámetros de extensión de renderizado se especifican como ajustes de información del dispositivo.

Puedes usar un editor de texto para modificar el archivo. El archivo RSReportServer.config se puede encontrar en la carpeta \Reporting Services\Report Server\Bin. Para más información sobre cómo modificar archivos de configuración, consulte Modificar un archivo de configuración Reporting Services (RSreportserver.config).

Cambiar el nombre de visualización

El nombre de visualización de una extensión de renderizado aparece en la lista de Exportación de la barra de herramientas de informes. Ejemplos de nombres de visualización predeterminados incluyen archivo web, archivo TIFF y archivo Acrobat (PDF). Puedes reemplazar el nombre de visualización predeterminado por un valor personalizado especificando el elemento OverrideNames en los archivos de configuración. Además, si defines dos instancias de una misma extensión de renderizado, puedes usar el elemento OverrideNames para distinguir cada instancia en la lista de Exportación.

Como los nombres de visualización están localizados, debes establecer el atributo Idioma si vas a reemplazar el nombre de visualización predeterminado por un valor personalizado. De lo contrario, cualquier nombre que especifiques será ignorado. El valor de idioma que establezcas debe ser válido para el ordenador del servidor de informes. Por ejemplo, si el servidor de informes está funcionando en un sistema operativo francés, deberías especificar "fr-FR" como valor de atributo.

El siguiente ejemplo ilustra cómo proporcionar un nombre personalizado en un servidor de informes en inglés:

<Extension Name="XML" Type="Microsoft.ReportingServices.Rendering.DataRenderer.XmlDataReport,Microsoft.ReportingServices.DataRendering">  
   <OverrideNames>  
     <Name Language="en-US">My Custom Display Name for XML Rendering</Name>  
   </OverrideNames>  
</Extension>  

Cambiar la configuración de información del dispositivo

Para modificar la configuración predeterminada de información de dispositivo que utiliza una extensión de renderizado que ya está desplegada en tu servidor de informes, debes escribir la estructura XML DeviceInfo en los archivos de configuración. Cada extensión de renderizado soporta configuraciones de información de dispositivo que son únicas para esa extensión. Para ver la lista completa de ajustes de información de dispositivo, consulte Pasar configuraciones de información de dispositivo a extensiones de renderizado.

El siguiente ejemplo ofrece una ilustración de la estructura y sintaxis XML que modifica la configuración predeterminada de la extensión de renderizado de imágenes:

<Render>  
    <Extension Name="IMAGE (EMF)" Type="Microsoft.ReportingServices.Rendering.ImageRenderer.ImageRenderer,Microsoft.ReportingServices.ImageRendering">  
        <OverrideNames>  
            <Name Language="en-US">Image (EMF)</Name>  
        </OverrideNames>  
        <Configuration>  
            <DeviceInfo>  
                <ColorDepth>32</ColorDepth>  
                <DpiX>300</DpiX>  
                <DpiY>300</DpiY>  
                <OutputFormat>EMF</OutputFormat>  
            </DeviceInfo>  
        </Configuration>  
    </Extension>  
</Render>  

Configurar múltiples entradas para una extensión de renderizado

Puedes crear múltiples instancias de la misma extensión de renderizado para soportar diferentes opciones de presentación de informes. Cada instancia que defines puede tener una combinación diferente de valores de parámetros. Al definir nuevas instancias de una extensión de renderizado existente, asegúrate de hacer lo siguiente:

  • Especifica un nombre único para la extensión.

    Cada instancia debe tener un valor único para el atributo Nombre . El siguiente ejemplo utiliza los nombres "IMAGE (EMF Landscape)" y "IMAGE (EMF Portrait)" para distinguir entre ambas instancias.

    Ten precaución al cambiar el nombre de una extensión de renderizado que ya está desplegada. Los desarrolladores que especifican extensiones de renderizado de forma programática utilizan el nombre de la extensión para identificar qué instancia usar para una operación de renderizado concreta. Si estás ejecutando aplicaciones personalizadas de Reporting Services en tu servidor de informes, asegúrate de que el desarrollador sepa si modificas el nombre de una extensión existente o añadiste una nueva.

  • Especifica un nombre de visualización único para que los usuarios puedan entender las diferencias para cada formato de salida.

    Si configuras varias versiones de la misma extensión, puedes asignar a cada versión un nombre único proporcionando un valor para OverrideNames. De lo contrario, todas las versiones de la extensión aparecerán con el mismo nombre en la lista de opciones de Exportación en la barra de herramientas de informes.

El siguiente ejemplo ilustra cómo usar la extensión predeterminada de renderizado de imagen (que produce salida TIFF) para generar EMF en modo Retrato junto con una segunda instancia que genera informes en FEM en modo horizontal. Fíjate que cada nombre de extensión es único. Al probar este ejemplo, recuerda elegir informes que no contengan funciones interactivas como opciones de mostrar/ocultar, matrices o enlaces de perforación (las funciones interactivas no funcionan en la extensión de renderizado de imagen):

<Render>  
    <Extension Name="IMAGE (EMF Landscape)" Type="Microsoft.ReportingServices.Rendering.ImageRenderer.ImageRenderer,Microsoft.ReportingServices.ImageRendering">  
        <OverrideNames>  
            <Name Language="en-US">EMF in Landscape Mode</Name>  
        </OverrideNames>  
        <Configuration>  
            <DeviceInfo>  
                <OutputFormat>EMF</OutputFormat>  
                <PageHeight>8.5in</PageHeight>  
                <PageWidth>11in</PageWidth>  
            </DeviceInfo>  
        </Configuration>  
    </Extension>  
    <Extension Name="IMAGE (EMF Portrait)" Type="Microsoft.ReportingServices.Rendering.ImageRenderer.ImageRenderer,Microsoft.ReportingServices.ImageRendering">  
        <OverrideNames>  
            <Name Language="en-US">EMF in Portrait Mode</Name>  
        </OverrideNames>  
        <Configuration>  
            <DeviceInfo>  
                <OutputFormat>EMF</OutputFormat>  
                <PageHeight>11in</PageHeight>  
                <PageWidth>8.5in</PageWidth>  
            </DeviceInfo>  
        </Configuration>  
    </Extension>  
</Render>