Partager via


ReportingService2010.SetDataDrivenSubscriptionProperties Méthode

Définition

Définit les propriétés d'un abonnement piloté par 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

Objet ExtensionSettings qui contient une liste de paramètres spécifiques à l'extension de remise.

DataRetrievalPlan
DataRetrievalPlan

Objet DataRetrievalPlan qui contient une liste de paramètres qui sont obligatoires pour récupérer des données de la requête de remise pour l'abonnement.

Description
String

Description explicite affichée pour les utilisateurs.

EventType
String

Type d'événement qui a déclenché l'abonnement. Les valeurs valides sont TimedSubscription ou SnapshotUpdated.

MatchData
String

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

Parameters
ParameterValueOrFieldReference[]

Tableau d'objets ParameterValue qui contient une liste de paramètres pour le rapport.

Attributs

Remarques

Le tableau suivant présente les informations relatives aux en-têtes et aux autorisations sur cette opération.

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

(Out) ServerInfoHeaderValue
Autorisations requises en mode natif UpdateAnySubscription
Autorisations requises en mode SharePoint <xref:Microsoft.SharePoint.SPBasePermissions.ManageAlerts>

Pour que l’abonnement piloté par les données s’exécute correctement, la source de données référencée par l’objet DataRetrievalPlan doit avoir une CredentialRetrieval propriété définie sur Store.

Les Field objets contenus dans sont DataSet vérifiés par rapport aux champs mappés aux paramètres d’extension de remise et aux valeurs de paramètres de rapport. Tous les champs référencés dans les paramètres d’extension de remise et les valeurs de 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 remise. Si un champ énuméré dans le jeu de données n’est pas retourné par la requête de remise, 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 des événements configurée sur le serveur de rapports. Si un événement n’est pas géré par une extension de traitement d’événement, une exception SOAP est levée avec le code rsInvalidEventd’erreur . L’événement doit être géré par une extension de traitement d’événement 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 crée des notifications. Si ce n’est pas le cas, une exception SOAP est levée avec le code rsEventNonSubscribeabled’erreur .

La valeur du paramètre dépend du MatchData type d’événement. Si l’événement est un événement TimedSubscription , un ScheduleDefinition objet est requis en tant que MatchData paramètre . Vous devez d’abord sérialiser l’objet ScheduleDefinition au format XML pour le passer en tant que valeur de chaîne et créer un abonnement en fonction de la planification. La structure XML peut 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é en tant que chaîne XML doit correspondre au format de date ISO 8601. Cette norme internationale de date et d’heure est au 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é comme 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 utc représentée par hh:mm.

Si la définition de planification d’un TimedSubscription est une planification partagée, vous devez passer l’ID de planification de la planification partagée en tant que MatchData paramètre. L’ID de planification est passé en tant que String, par exemple, « 4608ac1b-fc75-4149-9e15-5a8b5781b843 ». L’ID de planification peut être obtenu en appelant la ListSchedules méthode .

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

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

S’applique à