Administrar un proceso en ejecución

SQL Server Reporting Services supervisa el estado de los trabajos que se ejecutan en el servidor de informes. A intervalos regulares, el servidor de informes realiza un recorrido de los trabajos en curso y escribe la información sobre su estado en su propia base de datos. Un trabajo está en curso si se está llevando a cabo alguno de los siguientes procesos: ejecución de consultas en un servidor de bases de datos remoto o local, procesamiento de informes o representación de informes.

Se pueden administrar trabajos de usuario y trabajos del sistema. Los trabajos de usuario puede iniciarlos un usuario individual o una suscripción. Estos trabajos incluyen ejecutar un informe a petición, solicitar una instantánea de historial del informe, crear manualmente una instantánea de informe y procesar una suscripción estándar. Los trabajos del sistema los inicia el servidor de informes. Los trabajos del sistema incluyen instantáneas de ejecución de informe o de historial de informe programadas y suscripciones controladas por datos.

El tiempo de procesamiento del informe y el uso de recursos varía considerablemente dependiendo del informe, de la complejidad de la consulta, de la cantidad de datos y del formato de representación que se especifica para el informe. Los informes que contienen consultas sencillas con un origen de datos local normalmente se completan en milisegundos y no requieren administración ni optimización. Por el contrario, un informe grande que se representa en formato PDF o Excel podría requerir un tiempo de procesamiento considerable, dependiendo de los recursos de hardware, de las opciones de entrega y de si hay otros procesos en ejecución simultáneamente. En un servidor de informes, la mayoría de los procesos de larga duración son operaciones de representación de informes y procesos que esperan la finalización del procesamiento de una consulta. En ocasiones, es necesario cancelar un proceso de un informe si se desea poner un equipo en modo sin conexión o detener un trabajo en ejecución que está tardando demasiado en completarse.

Ver y cancelar trabajos

Puede usar SQL Server Management Studio para ver o cancelar un trabajo que se está ejecutando en el servidor de informes. Debe actualizar la página para recuperar una lista de trabajos que se están ejecutando actualmente u obtener el estado de trabajo actualizado de la base de datos del servidor de informes. Al conectarse a un servidor de informes en Management Studio, puede abrir una carpeta Trabajos para ver una lista de informes que se están procesando actualmente en el equipo del servidor de informes. La información del estado para cada trabajo se muestra en la página Propiedades del trabajo. Puede ver información del estado para todos los trabajos abriendo el cuadro de diálogo Cancelar trabajos del Servidor de informes.

Se pueden cancelar los procesos siguientes:

  • Procesamiento de informes a petición.

  • Procesamiento de informes programados.

  • Suscripciones estándar propiedad de usuarios individuales.

Cuando se cancela un trabajo, únicamente se cancelan los procesos que están en ejecución en el servidor de informes. Dado que el servidor de informes no administra el procesamiento de datos que se produce en otros equipos, se deben cancelar manualmente los procesos de consulta que quedan huérfanos posteriormente en otros sistemas. Es aconsejable especificar valores de tiempo de espera para cancelar automáticamente las consultas que tardan demasiado en ejecutarse. Para obtener más información, vea Establecer valores de tiempo de espera para el procesamiento de informes y conjuntos de datos compartidos (SSRS). Para obtener más información sobre la detención temporal de un informe, vea Pausar el procesamiento de informes y suscripciones.

Nota

En algunas circunstancias poco frecuentes, quizás resulte necesario reiniciar el servidor para cancelar un proceso. Para obtener más información, vea Iniciar y detener el servicio del servidor de informes.

No puede usar Management Studio para enumerar o cancelar la generación de modelos, el procesamiento de modelos o las suscripciones controladas por datos. Al notificar un servicio, no se proporciona una manera de cancelar el procesamiento o la generación de modelos. Sin embargo, puede cancelar las suscripciones controladas por datos usando las instrucciones proporcionadas en este tema.

Cómo cancelar una suscripción o procesamiento de informes

  1. En Management Studio, conéctese al servidor de informes. Para obtener instrucciones, vea Cómo conectarse a un servidor de informes en Management Studio.

  2. Abra la carpeta Trabajos.

  3. Haga clic con el botón secundario en el informe y, a continuación, haga clic en Cancelar trabajos.

Cómo cancelar una suscripción controlada por datos

  1. Abra el archivo RSReportServer.config en un editor de texto.

  2. Busque IsNotificationService.

  3. Establézcalo en False.

  4. Guarde el archivo.

  5. En el Administrador de informes, elimine la suscripción controlada por datos de la ficha Suscripciones del informe o de Mis suscripciones.

  6. Después de eliminar la suscripción, en el archivo RSReportServer.config, busque IsNotificationService y establézcalo en True.

  7. Guarde el archivo.

Configurar los ajustes de frecuencia para recuperar el estado del trabajo

Un trabajo en ejecución se almacena en la base de datos temporal del servidor de informes. Los parámetros de configuración del archivo RSReportServer.config se pueden modificar para controlar la frecuencia con la que el servidor de informes recorre los trabajos en curso y el intervalo después del cual cambia el estado de un trabajo en ejecución de nuevo a en ejecución. El parámetro RunningRequestsDbCycle especifica la frecuencia con la que el servidor de informes recorre los procesos en ejecución. De forma predeterminada, la información de estado se registra cada 60 segundos. El parámetro RunningRequestsAge especifica el intervalo que transcurre hasta que un trabajo pasa de considerarse nuevo a en ejecución.

Administrar trabajos mediante programación

Es posible administrar los trabajos mediante programación o con un script. Para obtener más información, vea ListJobs, CancelJob.