Habilitar y deshabilitar la impresión del lado cliente para Reporting Services

El botón de impresión de la barra de herramientas del Visor de informes usa el formato Portable Document Format (PDF) en las impresiones del lado cliente de los informes de Reporting Services visualizados en un explorador. En la nueva experiencia de impresión remota se usa la extensión de representación de PDF incluida en Reporting Servicespara representar el informe en formato PDF. También puede descargar el informe en formato PDF. O bien, si tiene instalada una aplicación para ver archivos PDF, el botón imprimir muestra un cuadro de diálogo de impresión para los elementos de configuración comunes de la página. Estos incluyen elementos de configuración, como el tamaño de página, una orientación y una vista previa del archivo PDF. Aunque la impresión del lado cliente está habilitada de manera predeterminada, puede deshabilitar esta característica para impedir que sea utilizada.

En las versiones anteriores de Reporting Services se usaba un control ActiveX que requería la descarga en el equipo cliente desde el servidor de informes. Si actualiza el servidor de informes a SQL Server 2016 o una versión posterior, el control de impresión no se quita de los equipos cliente ni del servidor de informes.

La experiencia de impresión

Cuando se selecciona el botón de impresión de la barra de herramientas del Visor de informes, la experiencia varía en función de qué aplicaciones de visualización de .PDF haya instaladas en el equipo cliente y de qué explorador se use. Dependiendo del equipo cliente, puede descargar el archivo PDF o configurar las opciones de impresión en un cuadro de diálogo (o ambos).

Screenshot of the Report toolbar.

Interacción Interfaz de usuario
El primer cuadro de diálogo es el mismo para todos los exploradores y permite cambiar las propiedades de diseño básicas, como la orientación. Al seleccionar Imprimir, la experiencia será ligeramente diferente dependiendo del explorador que se use. Screenshot of the first print properties screen.
En Chrome, se abre una pantalla de impresión de explorador detallada. Puede cambiar la configuración de impresión, imprimir y abrir el cuadro de diálogo de impresión del sistema operativo. Screenshot of the detailed print properties.Screenshot of the print configuration settings.
Si tiene instalada una aplicación de lector de PDF, el botón de impresión abrirá una ventana de vista previa del archivo PDF, que puede guardar o imprimir.
Si no tiene instalada una aplicación de lector de PDF, hay dos experiencias de usuario posibles:

El informe se representará automáticamente y se usará el proceso de descarga del explorador para descargar el archivo PDF. Nota: cuanto más complejo sea el informe, mayor será el tiempo que transcurra desde que seleccione Imprimir hasta que vea la notificación de descarga del explorador. También puede forzar la descarga de nuevo seleccionando Haga clic aquí para ver el PDF del informe.

Fuerce la descarga del PDF seleccionando Haga clic aquí para ver el PDF del informe.
Screenshot of the PDF ready notification.

Solucionar problemas de impresión del lado cliente

Si el botón de impresión de la barra de herramientas del Visor de informes está deshabilitado, compruebe lo siguiente:

  • La impresión del lado cliente está deshabilitada en el servidor de informes en Management Studio. Vea la sección Habilitar y deshabilitar la impresión del lado cliente de este artículo.

  • La extensión de representación de PDF SQL Server 2016 (13.x) Reporting Services o versiones posteriores (SSRS) está deshabilitada. Busque la sección <Extension Name="PDF" del archivo rsreportserver.config.

  • Estás viendo el informe en modo de comparación, en el que se usa el antiguo motor de representación HTML4 de SQL Server 2016 (13.x) Reporting Services o versiones posteriores (SSRS). La experiencia de impresión de PDF requiere el motor de representación HTML5. Seleccione Probar la versión preliminar de la barra de herramientas.

Screenshot of the Try Preview button.

Habilitar y deshabilitar la impresión del lado cliente

Los administradores de servidores de informes tienen la opción de deshabilitar la función de impresión remota; solo tienen que establecer la propiedad del sistema del servidor de informes EnableClientPrinting en false. De este modo se deshabilitará la impresión del lado cliente para todos los informes administrados por ese servidor. De manera predeterminada, EnableClientPrinting se establece en True. Puede deshabilitar la impresión del lado cliente de las siguientes maneras:

  • Para un servidor de informes en modo nativo:

    1. Inicie Management Studio con privilegios de administrador.

    2. Conéctese a una instancia del servidor de informes en Management Studio.

    3. Haga clic con el botón derecho en el nodo de servidor de informes y, después, seleccione Propiedades. Si la opción Propiedades está deshabilitada, compruebe que inició Management Studio con privilegios de administrador.

    4. Seleccione Advanced (Avanzadas).

    5. Seleccione EnableClientPrinting.

    6. Elija entre True o False y seleccione Aceptar.

      Screenshot of the EnableClientPrinting option.

  • Para un servidor de informes en modo de SharePoint:

    1. En Administración central de SharePoint, selecciona Administración de aplicaciones.

    2. Seleccione Administrar aplicaciones de servicio.

    3. Elija el nombre de la aplicación de servicio de Reporting Services y, a continuación, seleccione Administrar en la cinta de opciones de SharePoint.

    4. Seleccione Configuración del sistema.

    5. Seleccione Habilitar la impresión de cliente. La opción Habilitar la impresión de cliente está cerca de la parte inferior de la página.

    6. Seleccione Aceptar.

  • Escriba código o script para establecer la propiedad del sistema EnableClientPrinting del servidor de informes en False.

El siguiente script de ejemplo ilustra un enfoque válido para deshabilitar la impresión de lado cliente. Compile y ejecute el siguiente código de Microsoft Visual Basic para establecer la propiedad EnableClientPrinting en False. Después de ejecutar el código, reinicie IIS.

Script de ejemplo

Imports System  
Imports System.Web.Services.Protocols  
Class Sample  
   Public Shared Sub Main()  
Dim rs As New ReportingService()  
      rs.Credentials = System.Net.CredentialCache.DefaultCredentials  
        Dim props(0) As [Property]  
        Dim setProp As New [Property]  
        setProp.Name = "EnableClientPrinting"  
        setProp.Value = "False"   
        props(0) = setProp  
        Try  
            rs.SetSystemProperties(props)  
        Catch ex As System.Web.Services.Protocols.SoapException  
            Console.Write(ex.Detail.InnerXml)  
        Catch e as Exception  
            Console.Write(e.Message)  
        End Try  
    End Sub 'Main  
End Class 'Sample  

¿Tiene alguna pregunta más? Puede plantear sus dudas en el foro de Reporting Services.