Share via


ReportingService2005.SetSubscriptionProperties Method

Definition

Sets the properties of a subscription.

public:
 void SetSubscriptionProperties(System::String ^ SubscriptionID, ReportService2005::ExtensionSettings ^ ExtensionSettings, System::String ^ Description, System::String ^ EventType, System::String ^ MatchData, cli::array <ReportService2005::ParameterValue ^> ^ Parameters);
public void SetSubscriptionProperties (string SubscriptionID, ReportService2005.ExtensionSettings ExtensionSettings, string Description, string EventType, string MatchData, ReportService2005.ParameterValue[] Parameters);
member this.SetSubscriptionProperties : string * ReportService2005.ExtensionSettings * string * string * string * ReportService2005.ParameterValue[] -> unit
Public Sub SetSubscriptionProperties (SubscriptionID As String, ExtensionSettings As ExtensionSettings, Description As String, EventType As String, MatchData As String, Parameters As ParameterValue())

Parameters

SubscriptionID
String

The ID of the subscription.

ExtensionSettings
ExtensionSettings

An ExtensionSettings object that contains a list of settings that are specific to the delivery extension.

Description
String

A meaningful description that is displayed to users.

EventType
String

The type of event that triggers the subscription.

MatchData
String

The data that is associated with the specified type of event. This data is used by an event processing extension to match the subscription with an event that has fired.

Parameters
ParameterValue[]

An array of ParameterValue objects that contains a list of parameters for the report.

Remarks

The table below shows header and permissions information on this operation.

SOAP Headers (In) BatchHeaderValue

(Out) ServerInfoHeaderValue
Required Permissions UpdateAnySubscription OR (UpdateSubscription AND the user is the report owner and the subscription is a timed subscription)

The value of the EventType parameter must correspond to an event processing extension that is configured on the report server. If the event type is not handled by an event processing extension, a SOAP exception is thrown with the error code rsInvalidEvent. The event type must be handled by an event processing extension that creates notifications. When a value for the EventType parameter is received, the event processing extension is queried to determine whether the event creates notifications. If it does not, a SOAP exception is thrown with the error code rsEventNonSubscribeable.

The value of the MatchData parameter depends on the event type. If the event is a TimedSubscription event, a ScheduleDefinition object is required as the MatchData parameter. You must first serialize the ScheduleDefinition object as XML in order to pass it as a string value and create a subscription based on the schedule. The XML structure might look like the one in the following example:

<ScheduleDefinition>  
   <WeeklyRecurrence>  
      <StartDateTime>2003-02-24T09:00:00-08:00</StartDateTime>  
      <WeeksInterval>1</WeeksInterval>  
      <DaysOfWeek>  
         <Monday>True</Monday>  
         </DaysOfWeek>  
   </WeeklyRecurrence>  
</ScheduleDefinition>  

The value of the StartDateTime element when passed as an XML string should correspond to the date format ISO 8601. This international date and time standard is the extended format CCYY-MM-DDThh:mm:ss+/-Z where "CC" represents the century, "YY" the year, "MM" the month and "DD" the day. The letter "T" is the date and time separator and "hh", "mm", "ss" represent hour, minute, and second, respectively. This representation may be immediately followed by a "Z" to indicate Coordinated Universal Time (UTC). To indicate the time zone, represented as the difference between the local time and Coordinated Universal Time, "Z" is preceded by a "+" or "-" sign, followed by the difference from UTC represented as hh:mm.

If the schedule definition for a TimedSubscription is a shared schedule, you must pass the schedule ID of the shared schedule as the MatchData parameter. The schedule ID is passed as a String, for example, "4608ac1b-fc75-4149-9e15-5a8b5781b843". The schedule ID can be obtained by calling the ListSchedules method.

If the event is a snapshot update subscription, set MatchData parameter to null (Nothing in Visual Basic).

Applies to