ReportingService2005.ListSubscriptions(String, String) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Retorna uma lista de assinaturas que um usuário criou para um determinado relatório. A lista inclui tanto assinaturas padrão quanto baseadas em 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 completo do caminho do relatório.
- Owner
- String
O nome de usuário para recuperar as assinaturas.
Retornos
Um array de Subscription objetos que representam as assinaturas do usuário para um determinado relatório.
Exemplos
Para compilar o exemplo de código a seguir, você deve consultar o WSDL do Reporting Services e importar certos namespaces. Para mais informações, veja Exemplos de Código Compilando e Executando. O código de exemplo a seguir usa o ListSubscriptions método para recuperar uma lista de assinaturas para o relatório de Resumo de Vendas de Funcionários, que pertence ao usuário meuDomínio\meuNome de Usuário:
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 abaixo mostra informações sobre cabeçalhos e permissões sobre esta operação.
| Cabeçalhos SOAP | (Fora) ServerInfoHeaderValue |
| Permissões necessárias | (ReadSubscription no relatório E o usuário é o dono da assinatura) OU ReadAnySubscription |
Você pode fornecer um null valor (Nothing no Visual Basic) para os Owner parâmetros e Report . A informação que o ListSubscriptions método retorna varia dependendo dos parâmetros enviados:
Se os valores de ambos
OwnerforemReportnull, o método retorna todas as assinaturas de todos os relatórios que o usuário atual tem permissão para visualizar.Se apenas o
Ownerparâmetro for submetido, o método retorna todas as assinaturas de todos os relatórios que o usuário especificado criou e tem permissão para visualizar.Se apenas o
Reportparâmetro for submetido, o método retorna todas as assinaturas de todos os usuários do relatório especificado que o usuário atual tem permissão para visualizar.Se valores válidos forem fornecidos tanto para o
Ownerparâmetro quantoReportpara o parâmetro, o método retorna todas as assinaturas para o relatório especificado que o usuário especificado criou e tem permissão para visualizar.