Compartilhar via


Gerenciando um processo em execução

O SQL Server Reporting Services monitora o status dos trabalhos que estão em execução no servidor de relatório. Em intervalos regulares, o servidor de relatório examina os trabalhos em andamento e grava as informações de status no banco de dados do servidor de relatório. Um trabalho está em andamento se algum dos seguintes processos estiver ocorrendo: execução de consulta em um servidor de banco de dados remoto ou local, processamento de relatórios e renderização de relatórios.

Você pode gerenciar trabalhos de usuário e trabalhos de sistema. Os trabalhos de usuário são iniciados por um usuário individual ou uma assinatura. Isso inclui a execução de um relatório sob demanda, a solicitação de um instantâneo de histórico de relatórios, a criação manual de um instantâneo de relatório e o processamento de uma assinatura padrão. Os trabalhos de sistema são iniciados pelo servidor de relatório. Os trabalhos de sistema incluem instantâneos de execução de relatório agendados, instantâneos de histórico de relatórios agendados e assinaturas controladas por dados.

O tempo de processamento do relatório e o uso de recursos variam significativamente dependendo do relatório, da complexidade da consulta, da quantidade de dados e o do formato de renderização especificado para o relatório. Os relatórios que têm consultas simples em comparação a uma fonte de dados local normalmente são concluídos em milissegundos e nunca requerem gerenciamento ou ajuste. Por outro lado, um grande relatório que é renderizado em PDF ou Excel pode exigir um tempo de processamento significativo dependendo dos recursos de hardware, das opções de entrega e da execução simultânea de outros processos. Em um servidor de relatórios, a maioria dos processos de execução demorada corresponde às operações de renderização de relatório e aos processos que estão aguardando a conclusão do processamento da consulta. Ocasionalmente, você talvez precise cancelar o processamento de um relatório se desejar deixar o computador offline ou parar um trabalho cuja execução está demorando muito para terminar.

Exibindo e cancelando trabalhos

Você pode usar o SQL Server Management Studio para exibir ou cancelar um trabalho que está em execução no servidor de relatório. Atualize a página para recuperar uma lista dos trabalhos que estão em execução no momento ou para obter o status atualizado do trabalho do banco de dados do servidor de relatório. Ao se conectar a um servidor de relatório no Management Studio, você pode abrir uma pasta Trabalhos para exibir uma lista dos relatórios que estão sendo processados atualmente no computador do servidor de relatório. As informações de status de cada trabalho são exibidas na página Propriedades do Trabalho. Você pode exibir as informações de status de todos os trabalhos abrindo a caixa de diálogo Cancelar Trabalhos do Servidor de Relatório.

Os processos a seguir podem ser cancelados:

  • Processamento de relatórios sob demanda.

  • Processamento agendado de relatórios.

  • Assinaturas padrão de propriedade de usuários individuais.

O cancelamento de um trabalho só cancela os processos que estão em execução no servidor de relatório. Como o servidor de relatório não gerencia o processamento de dados que ocorre em outros computadores, cancele manualmente os processamentos de consulta que, consequentemente, ficam órfãos em outros sistemas. Especifique valores de tempo limite de consulta para desligar automaticamente consultas que estão demorando muito a serem executadas. Para obter mais informações, consulte Definindo valores de tempo limite para processamento de relatórios e conjuntos de dados compartilhados (SSRS). Para obter mais informações sobre a pausa temporária do relatório, consulte Pausando o processamento de relatório e assinatura.

ObservaçãoObservação

Em circunstâncias raras, você talvez precise reinicializar o servidor para cancelar um processo. Para obter mais informações, consulte Iniciando e parando o serviço Servidor de Relatório.

Você não pode usar o Management Studio para listar ou cancelar a geração de modelos, o processamento de modelos ou assinaturas controladas por dados. O Reporting Services não permite cancelar a geração ou o processamento de modelos. Porém, você pode cancelar assinaturas controladas por dados usando as instruções fornecidas neste tópico.

Como cancelar assinaturas ou o processamento de relatórios

  1. No Management Studio, conecte-se ao servidor de relatório. Para obter instruções, consulte Como conectar-se a um servidor de relatório no Management Studio.

  2. Abra a pasta Trabalhos.

  3. Clique com o botão direito do mouse no relatório e, em seguida, clique em Cancelar Trabalhos.

Como cancelar uma assinatura controlada por dados

  1. Abra o arquivo RSReportServer.config em um editor de texto.

  2. Localize IsNotificationService.

  3. Defina-o como False.

  4. Salve o arquivo.

  5. No Gerenciador de Relatórios, exclua a assinatura controlada por dados da guia Assinaturas do relatório ou de Minhas Assinaturas.

  6. Depois que você excluir a assinatura, no arquivo RSReportServer.config, localize IsNotificationService e defina-o como True.

  7. Salve o arquivo.

Definindo configurações de frequência para recuperar o status do trabalho

Um trabalho em execução é armazenado no banco de dados temporário do servidor de relatório. Você pode modificar as configurações do arquivo RSReportServer.config para controlar a frequência em que o servidor de relatório examina trabalhos em andamento e o intervalo após o qual o status de um trabalho em execução muda de “novo” para “em execução”. A configuração RunningRequestsDbCycle especifica com que frequência o servidor de relatório examina processos em execução. Por padrão, as informações de status são registradas a cada 60 segundos. A configuração RunningRequestsAge especifica o intervalo em que um trabalho passa de “novo” para “em execução”.

Gerenciando trabalhos programaticamente

Você pode gerenciar trabalhos programaticamente ou usando um script. Para obter mais informações, consulte ListJobs, CancelJob.