Introducción a las extensiones de entrega

SQL Server Reporting Services permite a los usuarios crear y publicar informes que, una vez creados y publicados, se pueden entregar en varias ubicaciones. Además, Reporting Services incluye varias extensiones de entrega y una API de entrega que permite a los desarrolladores crear más extensiones de entrega para ampliar aún más la funcionalidad de entrega en Reporting Services.

En la tabla siguiente se enumeran las extensiones de entrega incluidas con Reporting Services.

Extensión de entrega Descripción
Correo electrónico del servidor de informes Utiliza un servidor SMTP para enviar informes a usuarios individuales o grupos por correo electrónico.
Recurso compartido del servidor de informes Se utiliza para distribuir los informes dentro de una organización a los recursos compartidos de archivos de red. Permite copiar automáticamente un informe en un recurso compartido de archivos según una programación designada.

Screenshot of the Reporting Services delivery extension architecture.

Arquitectura de la extensión de entrega de Reporting Services.

Las extensiones de entrega se emparejan con las suscripciones. Cuando un usuario crea una suscripción, puede elegir una de las extensiones de entrega disponibles para determinar cómo se entrega el informe. En Reporting Services, las suscripciones se encuentran en la base de datos del servidor de informes. Cuando se produce un evento, Reporting Services hace corresponder el evento con las suscripciones contenidas en la base de datos del servidor de informes. El servidor de informes crea una notificación para cada suscripción enlazada al evento. En las suscripciones controladas por datos se crea una notificación para cada destinatario. Una vez creada una notificación, el servidor de informes invoca una extensión de entrega determinada y pasa los valores para la configuración de las extensiones especificada en la notificación. La extensión de entrega envía la notificación al usuario cuando lo especifica la extensión de entrega seleccionada.

Las extensiones de entrega implementan la API de extensiones de entrega de Reporting Services. Admitir la API de extensión de entrega de Reporting Services permite que las extensiones de entrega reciban notificaciones del servidor de informes y proporcionen el estado de la notificación.

El servidor de informes no administra los destinos de entrega de notificaciones e informes. La recopilación de la información de destino se realiza a través de código que se escribe en la extensión de entrega.

Suscripciones y extensiones de entrega

Las aplicaciones cliente crean suscripciones que utilizan extensiones de entrega usando dos métodos del servicio web del servidor de informes: CreateSubscription y CreateDataDrivenSubscription. Para modificar suscripciones que ya existen, se usan los métodos SetSubscriptionProperties y SetDataDrivenSubscriptionProperties. Cuando un usuario crea una suscripción, también selecciona una extensión de entrega para la suscripción y escribe los valores de la configuración de extensión necesaria. Cuando un usuario guarda una suscripción, se almacena en la base de datos del servidor de informes. Las suscripciones crean las notificaciones según una programación o un evento. Cuando una entrega comienza, la extensión de entrega seleccionada carga primero cualquier dato de configuración desde el archivo de configuración. Luego, se recupera la configuración de extensión para la suscripción y se establecen los valores. Finalmente, se llama al método Deliver y se envía la notificación.

Requisitos para desarrolladores

Al desarrollar una extensión de entrega de Reporting Services, es necesario tener lo siguiente:

  • Un equipo de implementación con un servidor de informes instalado.

  • Un equipo de desarrollo con Visual Studio 2008 o el kit de desarrollo de software (SDK) de Microsoft .NET Framework instalado.

  • Una comprensión detallada de las características y capacidades de Reporting Services, en concreto, la suscripción y la entrega.

  • Una comprensión detallada de ASP.NET y controles web si planea implementar su propia interfaz de usuario de suscripción para el Administrador de informes.

  • Experiencia de desarrollo en un lenguaje de .NET Framework como Microsoft Visual C# o Microsoft Visual Basic .NET.