Compartir vía


Usar una clase Notification para una extensión de entrega

La clase Notification se encuentra en el espacio de nombres Microsoft.ReportingServices.Interfaces y representa información de suscripción que las extensiones de entrega utilizan para entregar los informes. La Notification clase proporciona muchas propiedades que se pueden usar para representar los informes para su entrega, determinar el estado de la notificación y establecer datos de usuario.

Screenshot of the Report notification process.

La notificación es el objeto central de cualquier entrega.

Cuando se desencadena un evento que está asociado a una suscripción que utiliza la extensión de entrega personalizada, se crea una notificación que contiene un objeto Report. El objeto Report encapsula la funcionalidad que se necesita para representar un informe determinado en un formato de representación admitido y contiene las propiedades específicas del informe, como la dirección URL del informe en el servidor y su nombre. Para obtener más información sobre la Report clase , vea Usar la clase Report para una extensión de entrega.

Se pasa el objeto Notification al método Deliver de la extensión de entrega. El método Deliver debería contener código concreto para procesar la notificación y entregar el informe.

Para obtener un ejemplo de cómo usar la clase Notification, vea Ejemplos del producto SQL Server Reporting Services.

Funcionalidad de reintento

Reporting Services permite crear una cola de reintentos para las notificaciones que no se pueden entregar inmediatamente. Una vez que el servidor de informes invoca el método Deliver de una extensión de entrega, esta puede solicitar que el servidor de informes vuelva a intentar la entrega más adelante. Si se produce este evento, el servidor de informes coloca la notificación en una cola interna y vuelve a intentar la entrega después de transcurrido un período de tiempo específico. Los administradores pueden configurar el número máximo de reintentos que el servidor de informes realiza y el período entre ellos en la sección correspondiente a la extensión de entrega del archivo RSReportServer.config mediante los elementos XML MaxNumberOfRetries y PeriodBetweenRetries. Las notificaciones se quitan de la cola de reintento si la entrega posterior tiene éxito o si se alcanza el número máximo de reintentos. Si se produce un error en la entrega después del número máximo de reintentos, se descarta la notificación.