Condividi tramite


ReportingService2010.SetDataDrivenSubscriptionProperties Metodo

Definizione

Imposta le proprietà di una sottoscrizione guidata dai dati.

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

Parametri

ExtensionSettings
ExtensionSettings

Oggetto ExtensionSettings contenente un elenco di impostazioni specifiche dell'estensione per il recapito.

DataRetrievalPlan
DataRetrievalPlan

Oggetto DataRetrievalPlan contenente un elenco di impostazioni necessarie per recuperare dati per la sottoscrizione dalla query per il recapito.

Description
String

Descrizione significativa visualizzata agli utenti.

EventType
String

Tipo di evento che attiva la sottoscrizione. I valori validi sono TimedSubscription o SnapshotUpdated.

MatchData
String

Dati associati al tipo di evento specificato. Tali dati vengono utilizzati in un'estensione per l'elaborazione degli eventi per individuare una corrispondenza tra la sottoscrizione e un evento generato.

Parameters
ParameterValueOrFieldReference[]

Matrice di oggetti ParameterValue contenente un elenco di parametri per il report.

Attributi

Commenti

Nella tabella seguente vengono mostrate le informazioni sull'intestazione e sulle autorizzazioni relative a questa operazione.

Utilizzo intestazione SOAP (In) TrustedUserHeaderValue

(Out) ServerInfoHeaderValue
Autorizzazioni necessarie per la modalità nativa UpdateAnySubscription
Autorizzazioni necessarie per la modalità SharePoint <xref:Microsoft.SharePoint.SPBasePermissions.ManageAlerts>

Affinché la sottoscrizione guidata dai dati venga eseguita correttamente, l'origine dati a cui fa riferimento l'oggetto DataRetrievalPlan deve avere una CredentialRetrieval proprietà impostata su Store.

Gli Field oggetti contenuti in vengono controllati in DataSet base ai campi mappati alle impostazioni dell'estensione per il recapito e ai valori dei parametri del report. Tutti i campi a cui viene fatto riferimento nelle impostazioni dell'estensione per il recapito e nei valori dei parametri del report devono essere enumerati anche nel set di dati.

Non viene eseguita alcuna convalida per assicurarsi che i campi enumerati nel set di dati vengano restituiti dalla query di recapito. Se un campo enumerato nel set di dati non viene restituito dalla query di recapito, il server di report genera un errore durante l'elaborazione della sottoscrizione.

Il valore del EventType parametro deve corrispondere a un'estensione per l'elaborazione eventi configurata nel server di report. Se un evento non viene gestito da un'estensione per l'elaborazione di eventi, viene generata un'eccezione SOAP con il codice rsInvalidEventdi errore . L'evento deve essere gestito da un'estensione per l'elaborazione di eventi che crea notifiche. Quando viene ricevuto un valore per il EventType parametro, viene eseguita una query sull'estensione per l'elaborazione degli eventi per determinare se crea le notifiche. In caso contrario, viene generata un'eccezione SOAP con il codice rsEventNonSubscribeabledi errore .

Il valore del MatchData parametro dipende dal tipo di evento. Se l'evento è un evento TimedSubscription, come parametro è necessario MatchData un ScheduleDefinition oggetto . È necessario prima serializzare l'oggetto ScheduleDefinition come XML per passarlo come valore stringa e creare una sottoscrizione in base alla pianificazione. La struttura XML potrebbe essere simile a quella nell'esempio seguente:

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

Il valore dell'elemento StartDateTime quando passato come stringa XML deve corrispondere al formato di data ISO 8601. Questo standard di data e ora internazionale è il formato esteso CCYY-MM-DDThh:mm:ss+/-Z dove "CC" rappresenta il secolo, "AA" l'anno, "MM" il mese e "DD" il giorno. La lettera "T" è il separatore di data e ora e "hh", "mm", "ss" rappresentano rispettivamente ora, minuto e secondo. Questa rappresentazione può essere immediatamente seguita da una "Z" per indicare l'ora UTC (Coordinated Universal Time). Per indicare il fuso orario, rappresentato come differenza tra l'ora locale e l'ora universale coordinata, "Z" è preceduto da un segno "+" o "-", seguito dalla differenza rispetto all'ora UTC rappresentata come hh:mm.

Se la definizione di pianificazione per timedSubscription è una pianificazione condivisa, è necessario passare l'ID pianificazione della pianificazione condivisa come MatchData parametro . L'ID pianificazione viene passato come String, ad esempio , "4608ac1b-fc75-4149-9e15-5a8b5781b843". L'ID pianificazione può essere ottenuto chiamando il ListSchedules metodo .

È possibile utilizzare la classe XmlSerializer per convertire automaticamente la classe oggetto in una stringa XML. Per altre informazioni sulla classe XmlSerializer , vedere "System.Xml. Classe XmlSerializer" nella documentazione di Microsoft .NET Framework.

Se l'evento è una sottoscrizione di aggiornamento snapshot, il valore del MatchData parametro deve essere null (Nothing in Visual Basic).

Si applica a