Share via


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 clase Notification proporciona varias propiedades que se pueden utilizar para representar los informes para la entrega, determinar el estado de la notificación y establecer los datos de usuario.

La notificación es el objeto central de cualquier entrega

Proceso de notificación de informes

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 clase Report, 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 utilizar la clase Notification, vea Muestras de productos de SQL Server Reporting Services.

Funcionalidad de reintento

Reporting Services le permite crear una cola de reintento 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 ocurre esto, el servidor de informes coloca la notificación en una cola interna y reintenta la entrega cuando transcurra un período concreto. Los administradores pueden configurar el número máximo de reintentos que el servidor de informes realiza y el período entre los intentos en la sección correspondiente a la extensión de entrega del archivo RSReportServer.config utilizando 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.