ReportingService2006.ListReportSubscriptions Method

Retrieves a list of subscriptions that have been created by users for a given report.

Namespace: ReportService2006
Assembly: ReportService2006 (in reportservice2006.dll)

Syntax

'Declaration
Public Function ListReportSubscriptions ( _
    Report As String _
) As Subscription()
public Subscription[] ListReportSubscriptions (
    string Report
)
public:
array<Subscription^>^ ListReportSubscriptions (
    String^ Report
)
public Subscription[] ListReportSubscriptions (
    String Report
)
public function ListReportSubscriptions (
    Report : String
) : Subscription[]

Parameters

  • Report
    The fully qualified URL of the report including the file name and .rdl file name extension.

Return Value

An array of Subscription objects that contain the subscriptions created by users for a given report.

Remarks

To execute the ListReportSubscriptions method, the user will need the "Read Any Subscription" permission.

Example

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)
    {
        ReportingService2006 rs = new ReportingService2006();
        rs.Url = "http://<Server Name>/_vti_bin/ReportServer/" +
            "ReportService2006.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.ListReportSubscriptions("http://<Server Name>" +
                    "/Docs/Documents/AdventureWorks Sample Reports/" +
                    "Sales Order Detail.rdl");

            if (subscriptions != null)
            {
                // Retrieve properties for the first 
                // subscription in the list.
                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.OuterXml);
        }
    }
}
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 ReportingService2006()
        rs.Url = "http://<Server Name>/_vti_bin/ReportServer/" + _
            "ReportService2006.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 report As String = "http://<Server Name>/Docs/" + _
                "Documents/AdventureWorks Sample Reports/" + _
                "Sales Order Detail.rdl"

            subscriptions = rs.ListReportSubscriptions(report)

            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

Thread Safety

Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

Target Platforms

Windows 98, Windows 2000, Windows 2000 Server, Windows CE, Windows Server 2008, Windows 98 Second Edition, Pocket PC, Smart Phone, Windows Server 2003, Windows XP Professional with Service Pack 2 (SP2), Windows 2000 Professional, Windows 2000 Advanced Server, Windows XP Home Edition, For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005., Windows Vista, Windows Mobile 5.0, Windows Mobile 2003 for Pocket PC, Windows CE 5.0

See Also

Reference

ReportingService2006 Class
ReportingService2006 Members
ReportService2006 Namespace