次の方法で共有


ReportingService2005.ListSubscriptions(String, String) メソッド

定義

指定したレポートに対してユーザーが作成したサブスクリプションの一覧を返します。 一覧には、標準サブスクリプションとデータ ドリブン サブスクリプションの両方が含まれます。

public:
 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()

パラメーター

Report
String

レポートの完全なパス名です。

Owner
String

サブスクリプションを取得するユーザー名です。

戻り値

指定したレポートに対するユーザーのサブスクリプションを表す Subscription オブジェクトの配列です。

次のコード例をコンパイルするには、Reporting Services の WSDL を参照し、特定の名前空間をインポートする必要があります。 詳細については、「 コード例のコンパイルと実行」を参照してください。 次のコード例では、 メソッドを ListSubscriptions 使用して、ユーザー myDomain\myUserName が所有する Employee Sales Summary レポートのサブスクリプションの一覧を取得します。

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  

      Try  
         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  
         Console.WriteLine(e.Detail.OuterXml)  
      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;  

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

         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);   
      }  
   }  
}  

注釈

次の表に、この操作に関連するヘッダーおよび権限の情報を示します。

SOAP ヘッダー (Out) ServerInfoHeaderValue
必要なアクセス許可 (レポートに対する ReadSubscription、およびユーザーがサブスクリプションの所有者であること)、または ReadAnySubscription

Owner パラメーターと Report パラメーターには、null (Visual Basic では Nothing) を指定できます。 ListSubscriptions メソッドが返す情報は、送信されるパラメーターによって異なります。

  • OwnerReport の両方の値が null の場合、メソッドは現在のユーザーが表示する権限を持っている、すべてのレポートのすべてのサブスクリプションを返します。

  • Owner パラメーターだけを送信した場合、メソッドは指定したユーザーが作成し、表示の権限を持っている、すべてのレポートのすべてのサブスクリプションを返します。

  • Report パラメーターだけを送信した場合、メソッドは現在のユーザーが表示する権限を持っている、指定したレポートのすべてのユーザーのすべてのサブスクリプションを返します。

  • Owner パラメーターと Report パラメーターの両方に有効な値を指定した場合、指定したユーザーが作成し、表示する権限を持っている、指定したレポートのすべてのサブスクリプションを返します。

適用対象