ReportingService2005.ListSubscriptions(String, String) Methode

Definition

Gibt eine Liste von Abonnements zurück, die ein Benutzer für einen angegebenen Bericht erstellt hat. Die Liste enthält sowohl standardmäßige, als auch datengesteuerte Abonnements.

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

Parameter

Report
String

Der vollständige Pfadname des Berichts.

Owner
String

Der Benutzername, für den die Abonnements abgerufen werden sollen.

Gibt zurück

Ein Array von Subscription-Objekten, die die Abonnements des Benutzers für einen bestimmten Bericht darstellen.

Beispiele

Um das folgende Codebeispiel zu kompilieren, müssen Sie auf die Reporting Services WSDL verweisen und bestimmte Namespaces importieren. Weitere Informationen finden Sie unter Kompilieren und Ausführen von Codebeispielen. Im folgenden Beispielcode wird die ListSubscriptions -Methode verwendet, um eine Liste von Abonnements für den Bericht Employee Sales Summary abzurufen, der dem Benutzer myDomain\myUserName gehört:

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

Hinweise

In der folgenden Tabelle werden Header- und Berechtigungsinformationen zu diesem Vorgang dargestellt.

SOAP-Header (Out) ServerInfoHeaderValue
Erforderliche Berechtigungen (ReadSubscription im Bericht UND der Benutzer ist der Abonnementbesitzer) ODER ReadAnySubscription

Sie können einen null Wert (Nothing in Visual Basic) für die Owner Parameter und Report angeben. Die von der ListSubscriptions Methode zurückgegebenen Informationen variieren je nach den übermittelten Parametern:

  • Wenn die Werte von und OwnerReportnullsind, gibt die -Methode alle Abonnements für alle Berichte zurück, für die der aktuelle Benutzer über die Berechtigung verfügt.

  • Wenn nur der Owner Parameter übermittelt wird, gibt die -Methode alle Abonnements für alle Berichte zurück, die der angegebene Benutzer erstellt hat und über die Berechtigung zum Anzeigen verfügt.

  • Wenn nur der Report Parameter übermittelt wird, gibt die Methode alle Abonnements für alle Benutzer des angegebenen Berichts zurück, für die der aktuelle Benutzer über die Berechtigung zum Anzeigen verfügt.

  • Wenn gültige Werte sowohl für den Parameter als auch für den Owner Parameter Report angegeben werden, gibt die Methode alle Abonnements für den angegebenen Bericht zurück, den der angegebene Benutzer erstellt hat und über die Berechtigung zum Anzeigen verfügt.

Gilt für: