Compartilhar via


Habilitar e desabilitar a impressão do lado do cliente para Reporting Services

O controle ActiveX da Microsoft, RSClientPrint, fornece impressão do lado do cliente para relatórios exibidos em um navegador. O controle exibe uma caixa de diálogo de impressão personalizada que oferece suporte aos recursos comuns com outras caixas de diálogo de impressão. Os recursos incluem a visualização de impressão, as seleções de página para determinar páginas e intervalos específicos, as margens da página e a orientação. Embora a impressão do lado do cliente esteja habilitada por padrão, você pode desabilitar o recurso para impedi-lo de ser usado.

ObservaçãoObservação

Baixar controles ActiveX requer permissões de administrador.

Baixando o controle ActiveX

Cada usuário que deseja usar o recurso de impressão deve baixar e instalar o controle ActiveX que oferece a funcionalidade de impressão do cliente. A primeira vez que o usuário clica no ícone Impressora na barra de ferramentas do relatório, o controle ActiveX da Microsoft é baixado no computador. Após o download do controle, a caixa de diálogo Imprimir é exibida sempre que o usuário clica no ícone Impressora.

Dependendo das configurações do navegador, o usuário pode receber uma solicitação para instalar o controle, ser impedido de instalar o controle ou ter o controle instalado de maneira transparente em segundo plano.

Para o Microsoft Internet Explorer, as configurações que afetam o download e instalação do controle ActiveX são especificadas com o nó de plug-ins e controles ActiveX na página Configurações de Segurança da zona de conteúdo da Web. As seguintes configurações determinam se os usuários podem baixar e executar o controle de impressão, com base nas preferências de segurança da zona da Web:

  • Baixe os controles ActiveX assinados.

  • Controles ActiveX de script marcados para segurança para script.

  • Execute os controles ActiveX e plug-ins.

Os usuários que quiserem usar RSClientPrint para executar a impressão do lado do cliente deverão habilitar o seguinte:

  • Baixe os controles ActiveX assinados e os controles de Script ActiveX marcados como seguros para criar scripts para fins de instalação.

  • Execute os controles e plug-ins ActiveX para operações de impressão em andamento.

O controle ActiveX RSClientPrint é assinado, o que significa que ele contém um certificado digital válido da Microsoft.

Habilitando e desabilitando a impressão do lado do cliente

Os administradores de servidor de relatórios têm a opção de desabilitar o recurso de impressão, definindo a propriedade do sistema do servidor de relatórios EnableClientPrinting como false. Isso desabilitará a impressão do lado do cliente para todos os relatórios gerenciados por esse servidor. Por padrão, EnableClientPrinting é definido como true. Você pode desabilitar a impressão do lado do cliente das seguintes formas:

  • Para um servidor de relatório no modo nativo:

    1. Inicie o Management Studio com privilégios administrativos.

    2. Conecte-se a uma instância do servidor de relatório no Management Studio.

    3. Clique com o botão direito do mouse no nó do servidor de relatório e clique em Propriedades. Se a opção Propriedades estiver desabilitada, verifique se você iniciou o Management Studio com privilégios administrativos.

    4. Selecione Habilitar download para o controle de impressão do cliente ActiveX.

    5. Clique em OK.

  • Para um servidor de relatório no modo do SharePoint:

    1. Na Administração Central do SharePoint, clique em Gerenciamento de Aplicativos.

    2. Clique em Gerenciar aplicativos de serviço.

    3. Clique no nome do aplicativo de serviço do Reporting Services e, em seguida, clique em Gerenciar na faixa de opções do SharePoint.

    4. Clique em Configurações do Sistema.

    5. Selecione Habilitar Impressão de Cliente. A opção Habilitar Impressão de Cliente está próxima à parte inferior da página.

    6. Clique em OK.

  • Escreva um script ou código para definir a propriedade do sistema do servidor de relatório EnableClientPrinting como false.

O exemplo de script a seguir ilustra uma abordagem para desabilitar a impressão do lado do cliente. Compile e execute o seguinte código MicrosoftVisual Basic para definir a propriedade EnableClientPrinting como Falsa. Depois de executar o código, reinicialize o IIS.

Exemplo de Script

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