Langage

ReportingService2010.SetDataDrivenSubscriptionProperties Méthode

Définition

Définit les propriétés d’un abonnement basé sur les données.

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

Paramètres

ExtensionSettings
ExtensionSettings

Un ExtensionSettings objet contenant une liste de paramètres spécifiques à l’extension de livraison.

DataRetrievalPlan
DataRetrievalPlan

Un DataRetrievalPlan objet contenant une liste de paramètres nécessaires pour récupérer les données de la requête de livraison pour l’abonnement.

Description
String

Une description significative qui est affichée aux utilisateurs.

EventType
String

Le type d’événement qui déclenche l’abonnement. Les valeurs valides sont TimedSubscription ou SnapshotUpdated.

MatchData
String

Les données associées au type d’événement spécifié. Ces données sont utilisées par une extension de traitement d’événements pour faire correspondre l’abonnement à un événement qui a été déclenché.

Parameters
ParameterValueOrFieldReference[]

Un tableau d’objets ParameterValue contenant une liste de paramètres pour le rapport.

Attributs

Remarques

Le tableau ci-dessous présente les informations sur l’en-tête et les autorisations concernant cette opération.

Utilisation de l’en-tête SOAP (En) TrustedUserHeaderValue

(Dehors) ServerInfoHeaderValue
Mode natif : autorisations requises UpdateAnySubscription
Permissions requises en mode SharePoint <xref:Microsoft.SharePoint.SPBasePermissions.ManageAlerts>

Pour que l’abonnement piloté par les données fonctionne correctement, la source de données à laquelle l’objet DataRetrievalPlan fait référence doit avoir une CredentialRetrieval propriété définie à Store.

Les Field objets contenus dans le DataSet sont vérifiés par rapport aux champs qui sont mappés aux paramètres d’extension de livraison et aux valeurs des paramètres de rapport. Tous les champs référencés dans les paramètres d’extension de livraison et les valeurs des paramètres de rapport doivent également être énumérés dans le jeu de données.

Aucune validation n’est effectuée pour garantir que les champs énumérés dans le jeu de données sont retournés par la requête de livraison. Si un champ énuméré dans le jeu de données n’est pas retourné par la requête de livraison, le serveur de rapports génère une erreur lors du traitement de l’abonnement.

La valeur du EventType paramètre doit correspondre à une extension de traitement d’événements configurée sur le serveur de rapport. Si un événement n’est pas géré par une extension de traitement d’événement, une exception SOAP est générée avec le code rsInvalidEventd’erreur . L’événement doit être géré par une extension de traitement d’événements qui crée des notifications. Lorsqu’une valeur pour le EventType paramètre est reçue, l’extension de traitement des événements est interrogée pour déterminer si elle génère des notifications. Si ce n’est pas le cas, une exception SOAP est lancée avec le code rsEventNonSubscribeabled’erreur .

La valeur du MatchData paramètre dépend du type d’événement. Si l’événement est un événement TimedSubscription , un ScheduleDefinition objet est requis comme MatchData paramètre. Vous devez d’abord sérialiser l’objet ScheduleDefinition en XML afin de le passer en tant que valeur de chaîne et de créer un abonnement basé sur le planning. La structure XML pourrait ressembler à celle de l’exemple suivant :

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

La valeur de l’élément StartDateTime , lorsqu’il est passé comme une chaîne XML, doit correspondre au format de date ISO 8601. Cette norme internationale de date et d’heure est le format étendu CCYY-MM-DDThh :mm :ss+/-Z où « CC » représente le siècle, « YY » l’année, « MM » le mois et « DD » le jour. La lettre « T » est le séparateur de date et d’heure, et « hh », « mm », « ss » représentent respectivement l’heure, la minute et la seconde. Cette représentation peut être immédiatement suivie d’un « Z » pour indiquer le Temps Universel Coordonné (UTC). Pour indiquer le fuseau horaire, représenté par la différence entre l’heure locale et l’heure universelle coordonnée, « Z » est précédé d’un signe « + » ou « - », suivi de la différence avec UTC représentée par hh :mm.

Si la définition du planning pour un TimedSubscription est un horaire partagé, vous devez alors passer l’ID du planning partagé comme MatchData paramètre. L’identifiant du calendrier est transmis comme String, par exemple, « 4608ac1b-fc75-4149-9e15-5a8b5781b843 ». L’ID de l’ordonnance peut être obtenu en appelant la ListSchedules méthode.

Vous pouvez utiliser la classe XmlSerializer pour convertir automatiquement votre classe objet en chaîne XML. Pour plus d’informations sur la classe XmlSerializer, voir « System.Xml.XmlSerializer Class » dans la documentation du Microsoft .NET Framework.

Si l’événement est un abonnement de mise à jour instantanée, la valeur du MatchData paramètre doit être null (Nothing dans Visual Basic).

S’applique à