ReportingService2010.SetDataDrivenSubscriptionProperties Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Legt die Eigenschaften eines datenbasierten Abonnements fest.
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())
Parameter
- DataDrivenSubscriptionID
- String
Die ID des Abonnements, die von der Methode CreateDataDrivenSubscription(String, ExtensionSettings, DataRetrievalPlan, String, String, String, ParameterValueOrFieldReference[]) zurückgegeben wird.
- ExtensionSettings
- ExtensionSettings
Ein Objekt, das eine Liste von Einstellungen enthält, die spezifisch für die Liefererweiterung ExtensionSettings sind.
- DataRetrievalPlan
- DataRetrievalPlan
Ein DataRetrievalPlan Objekt, das eine Liste von Einstellungen enthält, die erforderlich sind, um Daten aus der Lieferanfrage für das Abonnement abzurufen.
- Description
- String
Eine aussagekräftige Beschreibung, die den Nutzern angezeigt wird.
- EventType
- String
Die Art von Ereignis, die das Abonnement auslöst. Die gültigen Werte sind TimedSubscription oder SnapshotUpdated.
- MatchData
- String
Die Daten, die mit dem angegebenen Ereignistyp verbunden sind. Diese Daten werden von einer Event-Processing-Erweiterung verwendet, um das Abonnement mit einem ausgelösten Ereignis abzugleichen.
- Parameters
- ParameterValueOrFieldReference[]
Ein Array von ParameterValue Objekten, das eine Liste von Parametern für den Bericht enthält.
- Attribute
Hinweise
Die untenstehende Tabelle zeigt Header- und Berechtigungsinformationen zu dieser Operation.
| Verwendung von SOAP-Headern | (In) TrustedUserHeaderValue (Aus) ServerInfoHeaderValue |
| Erforderliche Berechtigungen im nativen Modus | UpdateAnySubscription |
| Erforderliche Berechtigungen im SharePoint-Modus | <xref:Microsoft.SharePoint.SPBasePermissions.ManageAlerts> |
Damit das datengetriebene Abonnement ordnungsgemäß läuft, muss die Datenquelle, auf die das DataRetrievalPlan Objekt verweist, eine CredentialRetrieval Eigenschaft haben, die auf gesetzt ist Store.
Die Field in den enthaltenen DataSet Objekte werden mit den Feldern überprüft, die den Liefererweiterungseinstellungen und Berichtsparameterwerten zugeordnet sind. Alle Felder, die in den Liefererweiterungseinstellungen und Berichtsparameterwerten referenziert sind, müssen ebenfalls im Datensatz aufgezählt werden.
Es wird keine Validierung durchgeführt, um sicherzustellen, dass die im Datensatz enumerierten Felder von der Lieferanfrage zurückgegeben werden. Wenn ein im Datensatz enumeriertes Feld von der Lieferanfrage nicht zurückgegeben wird, meldet der Berichtsserver einen Fehler, wenn das Abonnement verarbeitet wird.
Der Wert des Parameters EventType muss einer Ereignisverarbeitungserweiterung entsprechen, die auf dem Berichtsserver konfiguriert ist. Wenn ein Ereignis nicht von einer Ereignisverarbeitungserweiterung behandelt wird, wird eine SOAP-Ausnahme mit dem Fehlercode rsInvalidEventgeworfen. Das Ereignis muss von einer Ereignisverarbeitungserweiterung verarbeitet werden, die Benachrichtigungen erstellt. Wenn ein Wert für den Parameter EventType empfangen wird, wird die Ereignisverarbeitungserweiterung abgerufen, um zu bestimmen, ob sie Benachrichtigungen erzeugt. Wenn nicht, wird eine SOAP-Ausnahme mit dem Fehlercode rsEventNonSubscribeablegeworfen.
Der Wert des Parameters MatchData hängt vom Ereignistyp ab. Wenn das Ereignis ein TimedSubscription-Ereignis ist, wird ein ScheduleDefinition Objekt als Parameter MatchData benötigt. Sie müssen das ScheduleDefinition Objekt zunächst als XML serialisieren, um es als String-Wert zu übergeben und ein Abonnement basierend auf dem Zeitplan zu erstellen. Die XML-Struktur könnte der im folgenden Beispiel ähneln:
<ScheduleDefinition>
<WeeklyRecurrence>
<StartDateTime>2003-02-24T09:00:00-08:00</StartDateTime>
<WeeksInterval>1</WeeksInterval>
<DaysOfWeek>
<Monday>True</Monday>
</DaysOfWeek>
</WeeklyRecurrence>
</ScheduleDefinition>
Der Wert des StartDateTime-Elements , wenn es als XML-Zeichenkette übergeben wird, sollte dem Datumsformat ISO 8601 entsprechen. Dieser internationale Datums- und Uhrzeitstandard ist das erweiterte Format CCYY-MM-DDThh:mm:ss+/-Z, wobei "CC" das Jahrhundert, "YY" das Jahr, "MM" den Monat und "DD" den Tag darstellt. Der Buchstabe "T" ist der Datums- und Zeittrenner, und "hh", "mm", "ss" stehen jeweils für Stunde, Minute und Sekunde. Diese Darstellung kann unmittelbar von einem "Z" gefolgt werden, um die koordinierte Universalzeit (UTC) anzuzeigen. Um die Zeitzone anzuzeigen, dargestellt als Differenz zwischen der Ortszeit und der koordinierten Universalzeit, wird "Z" von einem "+" oder "-" Zeichen vorangestellt, gefolgt von der Differenz von UTC, die als hh:mm dargestellt wird.
Wenn die Zeitplandefinition für ein TimedSubscription ein gemeinsamer Zeitplan ist, musst du die Zeitplan-ID des gemeinsamen Zeitplans als Parameter MatchData weitergeben. Die Schedule-ID wird beispielsweise als String"4608ac1b-fc75-4149-9e15-5a8b5781b843" weitergegeben. Die Zeitplan-ID kann durch Aufruf der Methode ListSchedules erhalten werden.
Du kannst die Klasse XmlSerializer verwenden, um deine Objektklasse automatisch in eine XML-Zeichenkette umzuwandeln. Weitere Informationen zur XmlSerializer-Klasse finden Sie unter "System.Xml.XmlSerializer Class" in der Microsoft .NET Framework-Dokumentation.
Wenn das Ereignis ein Snapshot-Update-Abonnement ist, sollte der Wert des MatchData Parameters (null in Visual Basic) sein Nothing .