ReportingService2005.ListSubscriptions(String, String) Method


返回用户针对给定报表创建的订阅的列表。Returns a list of subscriptions that a user has created for a given report. 该列表包含标准订阅和数据驱动的订阅。The list includes both standard and data-driven subscriptions.

 cli::array <ReportService2005::Subscription ^> ^ ListSubscriptions(System::String ^ Report, System::String ^ Owner);
public ReportService2005.Subscription[] ListSubscriptions (string Report, string Owner);
member this.ListSubscriptions : string * string -> ReportService2005.Subscription[]
Public Function ListSubscriptions (Report As String, Owner As String) As Subscription()



报表的完整路径名。The full path name of the report.


要检索其订阅的用户名。The user name for which to retrieve the subscriptions.



Subscription 对象的数组,这些对象表示用户针对给定报表的订阅。An array of Subscription objects that represent the user's subscriptions for a given report.


若要编译下面的代码示例,必须引用 Reporting Services WSDL 并导入某些命名空间。To compile the following code example, you must reference the Reporting Services WSDL and import certain namespaces. 有关详细信息,请参阅 编译和运行代码示例For more information, see Compiling and Running Code Examples. 下面的代码示例使用 ListSubscriptions 方法来检索员工销售汇总报表的订阅列表,该列表由用户 myDomain\myUserName 拥有:The following example code uses the ListSubscriptions method to retrieve a list of subscriptions for the Employee Sales Summary report, which is owned by the user myDomain\myUserName:

Imports System  
Imports System.Web.Services.Protocols  

Class Sample  
   Public Shared Sub Main()  
      Dim rs As New ReportingService2005()  
      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  

         subscriptions = rs.ListSubscriptions("/SampleReports/Employee Sales Summary", "myDomain\myUserName")  

         If Not (subscriptions Is Nothing) Then  
            ' Retrieve properties for the first subscription in the list.  
            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  
      End Try  
   End Sub 'Main  
End Class 'Sample  
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;  

         subscriptions = rs.ListSubscriptions("/SampleReports/Employee Sales Summary",  

         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)  


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

SOAP 标头SOAP Headers (Out) ServerInfoHeaderValue(Out) ServerInfoHeaderValue
所需的权限Required Permissions (ReadSubscription 报表上,并且用户是订阅所有者) 或 ReadAnySubscription(ReadSubscription on the report AND the user is the subscription owner) OR ReadAnySubscription

您可以 null Nothing 为和参数 Visual Basic) 值中提供 (Owner ReportYou can supply a null (Nothing in Visual Basic) value for the Owner and Report parameters. ListSubscriptions 方法返回的信息因提交的参数而异:The information that the ListSubscriptions method returns varies depending on the parameters that are submitted:

  • 如果和的值 Owner Report 都为 null ,则该方法将返回当前用户有权查看的所有报表的所有订阅。If the values of both Owner and Report are null, the method returns all subscriptions for all reports that the current user has permission to view.

  • 如果仅 Owner 提交参数,则该方法将返回指定用户已创建且有权查看的所有报表的所有订阅。If only the Owner parameter is submitted, the method returns all subscriptions for all reports that the specified user has created and has permission to view.

  • 如果仅 Report 提交参数,则方法返回当前用户有权查看的指定报表的所有用户的所有订阅。If only the Report parameter is submitted, the method returns all subscriptions for all users of the specified report that the current user has permission to view.

  • 如果为参数和参数提供了有效值 Owner Report ,则该方法将返回指定用户创建并有权查看的指定报表的所有订阅。If valid values are supplied for both the Owner parameter and Report parameter, the method returns all subscriptions for the specified report that the specified user created and has permission to view.

Applies to