ReportingService2005.GetSubscriptionProperties Method (String, ExtensionSettings, String, ActiveState, String, String, String, ParameterValue[])

 

Returns the properties of a specified subscription.

Namespace:   ReportService2005
Assembly:  ReportService2005 (in ReportService2005.dll)

public string GetSubscriptionProperties(
	string SubscriptionID,
	out ExtensionSettings ExtensionSettings,
	out string Description,
	out ActiveState Active,
	out string Status,
	out string EventType,
	out string MatchData,
	out ParameterValue[] Parameters
)

Parameters

SubscriptionID
Type: System.String

The ID of the subscription.

ExtensionSettings
Type: ReportService2005.ExtensionSettings

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

Description
Type: System.String

[out] A meaningful description that is displayed to users.

Active
Type: ReportService2005.ActiveState

[out] An ActiveState object that contains the active state of the subscription.

Status
Type: System.String

[out] The status of the subscription.

EventType
Type: System.String

[out] The type of event that triggers the subscription.

MatchData
Type: System.String

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

Parameters
Type: ReportService2005.ParameterValue[]

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

Return Value

Type: System.String

The user ID of the owner of the subscription.

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

SOAP Headers

(Out) ServerInfoHeaderValue

Required Permissions

(ReadSubscription on the report AND the user is the subscription owner) OR ReadAnySubscription

To compile this code example, you must reference the Reporting Services WSDL and import certain namespaces. For more information, see Compiling and Running Code Examples. The following code example uses the GetSubscriptionProperties method to retrieve the properties of one of the subscriptions for the Product Catalog report, which is owned by the user myDomain\myUserName. The subscription is not data driven, so the code assumes that all the settings for the delivery extension are static parameter values (ParameterValue objects):

using System;
using System.Web.Services.Protocols;

class Sample
{
   public static void Main()
   {
      ReportingService2005 rs = new ReportingService2005();
      rs.Credentials = System.Net.CredentialCache.DefaultCredentials;

      ExtensionSettings extSettings;
      string desc;
      ActiveState active;
      string status;
      string eventType;
      string matchData;
      ParameterValue[] values = null;
      Subscription[] subscriptions = null;
      ParameterValueOrFieldReference[] extensionParams = null;

      try
      {
         subscriptions = rs.ListSubscriptions( "/SampleReports/Employee Sales Summary", "Domain\\username" );

         if ( subscriptions != null )
         {
            rs.GetSubscriptionProperties( subscriptions[0].SubscriptionID, name, out extSettings, out desc, out active, out status, out eventType, out matchData, out values );

            Console.WriteLine( "Description: {0}", desc );
            Console.WriteLine( "Status: {0}", status );
            Console.WriteLine( "EventType: {0}", eventType );
            Console.WriteLine( "matchData: {0}", matchData );
            Console.WriteLine( "Extension: {0}", extSettings.Extension );

            extensionParams = extSettings.ParameterValues;

            if (extensionParams != null)
            {
               foreach (ParameterValueOrFieldReference extensionParam in extensionParams)
               {
                  Console.WriteLine( ((ParameterValue)extensionParam).Name + ": " + ((ParameterValue)extensionParam).Value );
               }
            }

            if ( values != null )
            {
               foreach ( ParameterValue pv in values )
               {
                  Console.WriteLine( "Name: {0}", pv.Name );
                  Console.WriteLine( "Value: {0}", pv.Value );
               }
            }
         }
      }

      catch ( SoapException e )
      {
         Console.WriteLine( e.Detail.InnerXml.ToString() ); 
      }
   }
}
Return to top
Show: