Compartilhar via


ReportingService2010.SetDataDrivenSubscriptionProperties Método

Definição

Define as propriedades de uma assinatura controlada por dados.

public:
 void SetDataDrivenSubscriptionProperties(System::String ^ DataDrivenSubscriptionID, ReportService2010::ExtensionSettings ^ ExtensionSettings, ReportService2010::DataRetrievalPlan ^ DataRetrievalPlan, System::String ^ Description, System::String ^ EventType, System::String ^ MatchData, cli::array <ReportService2010::ParameterValueOrFieldReference ^> ^ Parameters);
[System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/SetDataDrivenSubscriptionProperties", ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped, RequestNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", ResponseNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", Use=System.Web.Services.Description.SoapBindingUse.Literal)]
[System.Web.Services.Protocols.SoapHeader("TrustedUserHeaderValue")]
[System.Web.Services.Protocols.SoapHeader("ServerInfoHeaderValue", Direction=System.Web.Services.Protocols.SoapHeaderDirection.Out)]
public void SetDataDrivenSubscriptionProperties (string DataDrivenSubscriptionID, ReportService2010.ExtensionSettings ExtensionSettings, ReportService2010.DataRetrievalPlan DataRetrievalPlan, string Description, string EventType, string MatchData, ReportService2010.ParameterValueOrFieldReference[] Parameters);
[<System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/SetDataDrivenSubscriptionProperties", ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped, RequestNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", ResponseNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", Use=System.Web.Services.Description.SoapBindingUse.Literal)>]
[<System.Web.Services.Protocols.SoapHeader("TrustedUserHeaderValue")>]
[<System.Web.Services.Protocols.SoapHeader("ServerInfoHeaderValue", Direction=System.Web.Services.Protocols.SoapHeaderDirection.Out)>]
member this.SetDataDrivenSubscriptionProperties : string * ReportService2010.ExtensionSettings * ReportService2010.DataRetrievalPlan * string * string * string * ReportService2010.ParameterValueOrFieldReference[] -> unit
Public Sub SetDataDrivenSubscriptionProperties (DataDrivenSubscriptionID As String, ExtensionSettings As ExtensionSettings, DataRetrievalPlan As DataRetrievalPlan, Description As String, EventType As String, MatchData As String, Parameters As ParameterValueOrFieldReference())

Parâmetros

ExtensionSettings
ExtensionSettings

Um objeto ExtensionSettings que contém uma lista de configurações específicas à extensão de entrega.

DataRetrievalPlan
DataRetrievalPlan

Um objeto DataRetrievalPlan que contém uma lista de configurações necessárias para recuperar dados da consulta de entrega da assinatura.

Description
String

Uma descrição significativa exibida aos usuários.

EventType
String

O tipo de evento que dispara a assinatura. Os valores válidos são TimedSubscription ou SnapshotUpdated.

MatchData
String

Os dados associados ao tipo de evento especificado. Esses dados são usados por um evento que está processando a extensão para corresponder a assinatura com um evento acionado.

Parameters
ParameterValueOrFieldReference[]

Uma matriz de objetos ParameterValue que contém uma lista de parâmetros para o relatório.

Atributos

Comentários

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

Uso do cabeçalho SOAP (In) TrustedUserHeaderValue

(Out) ServerInfoHeaderValue
Permissões necessárias do modo nativo UpdateAnySubscription
Permissões necessárias do modo do SharePoint <xref:Microsoft.SharePoint.SPBasePermissions.ManageAlerts>

Para que a assinatura controlada por dados seja executada corretamente, a fonte de dados que o DataRetrievalPlan objeto faz referência deve ter uma CredentialRetrieval propriedade definida Storecomo .

Os Field objetos contidos no DataSet são verificados em relação aos campos mapeados para configurações de extensão de entrega e valores de parâmetro de relatório. Todos os campos referenciados em configurações de extensão de entrega e valores de parâmetro de relatório também devem ser enumerados no conjunto de dados.

Nenhuma validação é executada para garantir que os campos enumerados no conjunto de dados sejam retornados pela consulta de entrega. Se um campo enumerado no conjunto de dados não for retornado pela consulta de entrega, o servidor de relatório gerará um erro quando a assinatura for processada.

O valor do EventType parâmetro deve corresponder a uma extensão de processamento de eventos configurada no servidor de relatório. Se um evento não for tratado por uma extensão de processamento de eventos, uma exceção SOAP será gerada com o código rsInvalidEventde erro . O evento deve ser tratado por uma extensão de processamento de eventos que cria notificações. Quando um valor para o EventType parâmetro é recebido, a extensão de processamento de eventos é consultada para determinar se ele cria notificações. Se isso não acontecer, uma exceção SOAP será gerada com o código rsEventNonSubscribeablede erro .

O valor do MatchData parâmetro depende do tipo de evento. Se o evento for um evento TimedSubscription , um ScheduleDefinition objeto será necessário como o MatchData parâmetro . Primeiro, você deve serializar o ScheduleDefinition objeto como XML para passá-lo como um valor de cadeia de caracteres e criar uma assinatura com base no agendamento. A estrutura XML pode ser semelhante à do exemplo a seguir:

<ScheduleDefinition>  
   <WeeklyRecurrence>  
      <StartDateTime>2003-02-24T09:00:00-08:00</StartDateTime>  
      <WeeksInterval>1</WeeksInterval>  
      <DaysOfWeek>  
         <Monday>True</Monday>  
         </DaysOfWeek>  
   </WeeklyRecurrence>  
</ScheduleDefinition>  

O valor do elemento StartDateTime quando passado como uma cadeia de caracteres XML deve corresponder ao formato de data ISO 8601. Esse padrão internacional de data e hora é o formato estendido CCYY-MM-DDThh:mm:ss+/-Z em que "CC" representa o século, "AAAA" o ano, "MM" o mês e "DD" do dia. A letra "T" é o separador de data e hora e "hh", "mm", "ss" representam hora, minuto e segundo, respectivamente. Essa representação pode ser seguida imediatamente por um "Z" para indicar UTC (Tempo Universal Coordenado). Para indicar o fuso horário, representado como a diferença entre a hora local e o Tempo Universal Coordenado, "Z" é precedido por um sinal "+" ou "-", seguido pela diferença do UTC representado como hh:mm.

Se a definição de agenda para uma TimedSubscription for uma agenda compartilhada, você deverá passar a ID de agendamento do agendamento compartilhado como o MatchData parâmetro . A ID do agendamento é passada como um String, por exemplo, "4608ac1b-fc75-4149-9e15-5a8b5781b843". A ID de agendamento pode ser obtida chamando o ListSchedules método .

Você pode usar a classe XmlSerializer para converter automaticamente sua classe de objeto em uma cadeia de caracteres XML. Para obter mais informações sobre a classe XmlSerializer, confira "System.Xml. Classe XmlSerializer" na documentação do Microsoft .NET Framework.

Se o evento for uma assinatura de atualização instantâneo, o valor do MatchData parâmetro deverá ser null (Nothing no Visual Basic).

Aplica-se a