다음을 통해 공유


ReportingService2010.ListSubscriptions(String) 메서드

정의

지정된 항목에 대해 만든 구독의 목록을 검색합니다. 이 메서드는 Report 항목 유형에 적용됩니다.

public:
 cli::array <ReportService2010::Subscription ^> ^ ListSubscriptions(System::String ^ ItemPathOrSiteURL);
[System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/ListSubscriptions", 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 ReportService2010.Subscription[] ListSubscriptions (string ItemPathOrSiteURL);
[<System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/ListSubscriptions", 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.ListSubscriptions : string -> ReportService2010.Subscription[]
Public Function ListSubscriptions (ItemPathOrSiteURL As String) As Subscription()

매개 변수

ItemPathOrSiteURL
String

파일 이름과 SharePoint 모드에서는 확장명을 포함하는 사이트 또는 항목의 정규화된 URL입니다.

보고서 서버 URL 또는 SharePoint 사이트 URL이 지정된 경우 지정된 서버 또는 사이트에서 모든 구독이 반환됩니다.

반환

지정된 사이트 또는 항목에 대해 만든 구독을 포함하는 Subscription 개체의 배열입니다.

특성

예제

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>" +  
                    "/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 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 report As String = "http://<Server Name>/Docs/" + _  
                "Documents/AdventureWorks Sample Reports/" + _  
                "Sales Order Detail.rdl"  

            subscriptions = rs.ListSubscriptions(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  

설명

다음 표에서는 이 작업에 대한 헤더 및 사용 권한 정보를 보여 줍니다.

SOAP 헤더 사용 (In) TrustedUserHeaderValue

(Out) ServerInfoHeaderValue
기본 모드 필수 권한 (ReadSubscription 보고서에서 사용자가 구독 소유자임) OR ReadAnySubscription
SharePoint 모드 필수 권한 <xref:Microsoft.SharePoint.SPBasePermissions.ManageAlerts> OR (<xref:Microsoft.SharePoint.SPBasePermissions.CreateAlerts> 보고서에서 사용자가 구독 소유자이고 구독이 시간 제한 구독임).

적용 대상