Share via


ReportingService2005.ListSubscriptions(String, String) Método

Definição

Retorna uma lista de assinaturas que um usuário criou para um determinado relatório. A lista inclui assinaturas padrão e controladas por dados.

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

Parâmetros

Report
String

O nome do caminho completo do relatório.

Owner
String

O nome de usuário para o qual recuperar as assinaturas.

Retornos

Uma matriz de objetos Subscription que representa as assinaturas do usuário para um determinado relatório.

Exemplos

Para compilar o exemplo de código a seguir, você deve referenciar o WSDL Reporting Services e importar determinados namespaces. Para obter mais informações, consulte Compilando e executando exemplos de código. O código de exemplo a seguir usa o ListSubscriptions método para recuperar uma lista de assinaturas para o relatório Resumo de Vendas do Funcionário, que pertence ao usuário 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  

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

Comentários

A tabela a seguir mostra o cabeçalho e as informações de permissão sobre esta operação.

Cabeçalhos SOAP (Out) ServerInfoHeaderValue
Permissões necessárias (ReadSubscription no relatório E o usuário é o proprietário da assinatura) OU ReadAnySubscription

Você pode fornecer um null valor (Nothing no Visual Basic) para os Owner parâmetros e Report . As informações retornadas pelo ListSubscriptions método variam dependendo dos parâmetros enviados:

  • Se os valores de Owner e Report forem null, o método retornará todas as assinaturas para todos os relatórios que o usuário atual tem permissão para exibir.

  • Se apenas o Owner parâmetro for enviado, o método retornará todas as assinaturas para todos os relatórios que o usuário especificado criou e tem permissão para exibir.

  • Se apenas o Report parâmetro for enviado, o método retornará todas as assinaturas para todos os usuários do relatório especificado que o usuário atual tem permissão para exibir.

  • Se valores válidos forem fornecidos para o parâmetro e Report o Owner parâmetro, o método retornará todas as assinaturas do relatório especificado que o usuário especificado criou e tem permissão para exibir.

Aplica-se a