ReportingService2006.ListReportSubscriptions(String) ReportingService2006.ListReportSubscriptions(String) ReportingService2006.ListReportSubscriptions(String) Method

定义

检索给定报表的用户已创建的订阅的列表。 Retrieves a list of subscriptions that have been created by users for a given report.

public:
 cli::array <ReportService2006::Subscription ^> ^ ListReportSubscriptions(System::String ^ Report);
public ReportService2006.Subscription[] ListReportSubscriptions (string Report);
Public Function ListReportSubscriptions (Report As String) As Subscription()

参数

Report
String String String

报表的完全限定 URL,其中包括文件名和 .rdl 文件扩展名。 The fully qualified URL of the report including the file name and .rdl file name extension.

返回

一个 Subscription 对象的数组,该数组包含用户针对给定报表创建的订阅。 An array of Subscription objects that contain the subscriptions created by users for a given report.

示例

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  

注解

下表显示了有关此操作的标头和权限信息。The table below shows header and permissions information on this operation.

SOAP 标头SOAP Headers (In) TrustedUserHeaderValue(In) TrustedUserHeaderValue

(Out) ServerInfoHeaderValue(Out) ServerInfoHeaderValue
所需的权限Required Permissions NoneNone

如果用户具有ManageAlerts权限,此方法返回的所有订阅。If the user has the ManageAlerts permission, this method returns all subscriptions. 如果用户具有CreateAlerts权限,该方法将返回用户拥有的所有定时的订阅。If the user has the CreateAlerts permission, the method returns all timed subscriptions owned by the user.

若要执行ListReportSubscriptions方法,用户将需要"读取任何订阅"权限。To execute the ListReportSubscriptions method, the user will need the "Read Any Subscription" permission.

适用于