ReportingService2010.GetSubscriptionProperties Method

Definition

Returns the properties of a specified subscription.

public:
 System::String ^ GetSubscriptionProperties(System::String ^ SubscriptionID, [Runtime::InteropServices::Out] ReportService2010::ExtensionSettings ^ % ExtensionSettings, [Runtime::InteropServices::Out] System::String ^ % Description, [Runtime::InteropServices::Out] ReportService2010::ActiveState ^ % Active, [Runtime::InteropServices::Out] System::String ^ % Status, [Runtime::InteropServices::Out] System::String ^ % EventType, [Runtime::InteropServices::Out] System::String ^ % MatchData, [Runtime::InteropServices::Out] cli::array <ReportService2010::ParameterValue ^> ^ % Parameters);
[System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/GetSubscriptionProperties", ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped, RequestNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", ResponseNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", Use=System.Web.Services.Description.SoapBindingUse.Literal)]
[System.Web.Services.Protocols.SoapHeader("TrustedUserHeaderValue")]
[System.Web.Services.Protocols.SoapHeader("ServerInfoHeaderValue", Direction=System.Web.Services.Protocols.SoapHeaderDirection.Out)]
public string GetSubscriptionProperties (string SubscriptionID, out ReportService2010.ExtensionSettings ExtensionSettings, out string Description, out ReportService2010.ActiveState Active, out string Status, out string EventType, out string MatchData, out ReportService2010.ParameterValue[] Parameters);
[<System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/GetSubscriptionProperties", ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped, RequestNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", ResponseNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", Use=System.Web.Services.Description.SoapBindingUse.Literal)>]
[<System.Web.Services.Protocols.SoapHeader("TrustedUserHeaderValue")>]
[<System.Web.Services.Protocols.SoapHeader("ServerInfoHeaderValue", Direction=System.Web.Services.Protocols.SoapHeaderDirection.Out)>]
member this.GetSubscriptionProperties : string * ExtensionSettings * string * ActiveState * string * string * string * ParameterValue[] -> string
Public Function GetSubscriptionProperties (SubscriptionID As String, ByRef ExtensionSettings As ExtensionSettings, ByRef Description As String, ByRef Active As ActiveState, ByRef Status As String, ByRef EventType As String, ByRef MatchData As String, ByRef Parameters As ParameterValue()) As String

Parameters

SubscriptionID
String

The ID of the subscription.

ExtensionSettings
ExtensionSettings

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

Description
String

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

Active
ActiveState

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

Status
String

[out] The status of the subscription.

EventType
String

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

MatchData
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 occurred.

Parameters
ParameterValue[]

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

Returns

The user ID for the owner of the subscription.

Attributes

Examples

using System;  
using System.Collections.Generic;  
using System.IO;  
using System.Text;  
using System.Web;  
using System.Web.Services;  
using System.Web.Services.Protocols;  

class Sample  
{  
    static void Main(string[] args)  
    {  
        ReportingService2010 rs = new ReportingService2010();  
        rs.Url = "http://<Server Name>" +  
            "/_vti_bin/ReportServer/ReportService2010.asmx";  
        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("http://<Server Name>");  

            if (subscriptions != null)  
            {  
                rs.GetSubscriptionProperties(  
                    subscriptions[0].SubscriptionID, 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());  
        }  
    }  
}  
Imports System  
Imports System.IO  
Imports System.Text  
Imports System.Web.Services  
Imports System.Web.Services.Protocols  

Class Sample  

    Public Shared Sub Main()  

        Dim rs As New ReportingService2010()  
        rs.Url = "http://<Server Name>/_vti_bin/ReportServer/ReportService2010.asmx"  
        rs.Credentials = System.Net.CredentialCache.DefaultCredentials  

        Dim extSettings As ExtensionSettings  
       Dim desc As String  
        Dim active As ActiveState  
        Dim status As String  
        Dim eventType As String  
        Dim matchData As String  
        Dim values As ParameterValue() = Nothing  
        Dim subscriptions As Subscription() = Nothing  
        Dim extensionParams As ParameterValueOrFieldReference() = Nothing  

        Try  
            Dim site As String = "http://<Server Name>"  

            subscriptions = rs.ListSubscriptions(site)  

            If Not (subscriptions Is Nothing) Then  
                rs.GetSubscriptionProperties( _  
                    subscriptions(0).SubscriptionID, extSettings, _  
                    desc, active, status, eventType, matchData, _  
                    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 Not (extensionParams Is Nothing) Then  
                    Dim extensionParam As _  
                        ParameterValueOrFieldReference  
                  For Each extensionParam In extensionParams  
                        Console.WriteLine((CType(extensionParam, _  
                            ParameterValue).Name + ": " + _  
                            CType(extensionParam, ParameterValue).Value))  
                    Next extensionParam  
                End If  

                If Not (values Is Nothing) Then  
                    Dim pv As ParameterValue  
                    For Each pv In values  
                        Console.WriteLine("Name: {0}", pv.Name)  
                        Console.WriteLine("Value: {0}", pv.Value)  
                    Next pv  
                End If  
            End If  

        Catch e As SoapException  
            Console.WriteLine(e.Detail.InnerXml.ToString())  
        End Try  

    End Sub  

End Class  

Remarks

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

SOAP Header Usage (In) TrustedUserHeaderValue

(Out) ServerInfoHeaderValue
Native Mode Required Permissions (ReadSubscription on the report AND the user is the subscription owner) OR ReadAnySubscription
SharePoint Mode Required Permissions <xref:Microsoft.SharePoint.SPBasePermissions.ManageAlerts> OR (<xref:Microsoft.SharePoint.SPBasePermissions.CreateAlerts> AND the user is the subscription owner)

Applies to