Implementing the ISubscriptionBaseUIUserControl Interface for a Delivery Extension
Reporting Services delivery extensions can contain an implementation of a subscription user interface (UI) for gathering extension-specific information in Report Manager. The UI is invoked when a user creates a new subscription or modifies an existing one. When a new subscription is being created, the UI displays suitable default values and enables users to interact with the delivery provider. When a subscription is being modified, the UI is pre-populated with the information in the current subscription.
Delivery extensions provide subscription UI as a WebForm user control. The report server incorporates the user control defined by the delivery extension when displaying the subscriptions UI. The base interface that provides abstract methods enabling this functionality is the ISubscriptionBaseUIUserControl interface. This interface ensures that common operations, such as validation of input values, are correctly performed. Additionally, the base user control supplies a set of default properties that are used by the report server for consistency across subscriptions. These properties are required by delivery extensions that are integrated with Report Manager.
You can implement the ISubscriptionBaseUIUserControl interface in a delivery provider in order to build a subscription UI for Report Manager. The ISubscriptionBaseUIUserControl interface provides infrastructure for enabling users to enter values for subscription settings, for processing the settings needed for the delivery extension, and for validating the settings.
|You are not required to implement the ISubscriptionBaseUIUserControl interface as part of your delivery extension. Subscriptions that use your delivery extension can always be created through the SOAP API methods CreateSubscription and CreateDataDrivenSubscription instead. For more information about the SOAP API features for managing subscription and delivery, see Subscription and Delivery Methods.|
The ISubscriptionBaseUIUserControl interface extends IExtension. Your user control that implements ISubscriptionBaseUIUserControl must also inherit from System.Web.UI.WebControls.WebControl. For more information about the WebControl class, see your Microsoft .NET Framework Developer's Guide.
For an example of how to use the ISubscriptionBaseUIUserControl interface, see Printer Delivery Extension Sample.