言語

ReportingService2010.SetDataDrivenSubscriptionProperties メソッド

定義

データ駆動型サブスクリプションのプロパティを設定します。

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

パラメーター

ExtensionSettings
ExtensionSettings

デリバリー拡張機能に特有の設定リストを含む ExtensionSettings オブジェクトです。

DataRetrievalPlan
DataRetrievalPlan

サブスクリプションのデリバリークエリからデータを取得するために必要な設定のリストを含む DataRetrievalPlan オブジェクトです。

Description
String

ユーザーに表示される意味のある説明。

EventType
String

サブスクリプションをトリガーするイベントの種類。 有効な値は、TimedSubscription または SnapshotUpdatedです。

MatchData
String

指定されたイベントの種類に関連付けられたデータ。 このデータはイベント処理拡張機能によって使用され、サブスクリプションと発生したイベントを照合します。

Parameters
ParameterValueOrFieldReference[]

レポートのパラメータリストを含む ParameterValue オブジェクトの配列です。

属性

注釈

以下の表は、この操作のヘッダーおよび権限情報を示しています。

SOAPヘッダーの使用 (イン) TrustedUserHeaderValue

(アウト) ServerInfoHeaderValue
ネイティブモードの必要権限 UpdateAnySubscription
SharePointモードの必要権限 <xref:Microsoft.SharePoint.SPBasePermissions.ManageAlerts>

データ駆動型サブスクリプションが正しく動作するためには、 DataRetrievalPlan オブジェクトが参照するデータソースに CredentialRetrieval プロパティが Storeに設定されている必要があります。

Fieldに含まれるDataSetオブジェクトは、デリバリー拡張設定とレポートパラメータ値にマッピングされたフィールドと照合されます。 デリバリー拡張設定やレポートパラメータ値で参照されるすべてのフィールドもデータセットに列挙されなければなりません。

データセットに列挙されたフィールドがデリバリークエリで返されることを確認するための検証は行われていません。 データセットに列挙されたフィールドが配信クエリで返されない場合、サブスクリプション処理時にレポートサーバーがエラーを発生させます。

EventTypeパラメータの値は、レポートサーバー上で設定されたイベント処理拡張に対応しなければなりません。 イベント処理拡張で処理されない場合、エラーコード rsInvalidEventとともにSOAP例外がスローされます。 イベントは通知を作成するイベント処理拡張機能によって処理されなければなりません。 EventTypeパラメータの値が受信されると、イベント処理拡張が通知を生成するかどうかを問い合わせられます。 もしそうでなければ、エラーコード rsEventNonSubscribeableを含むSOAP例外がスローされます。

MatchDataパラメータの値はイベントタイプによって異なります。 イベントがTimedSubscriptionイベントの場合、ScheduleDefinitionパラメータとしてMatchDataオブジェクトが必要です。 まず ScheduleDefinition オブジェクトをXMLとしてシリアライズし、スケジュールに基づいてサブスクリプションを作成する必要があります。 XML構造は以下の例のように見えるかもしれません:

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

StartDateTime要素の値はXML文字列として渡される場合、日付フォーマットISO 8601に対応しなければなりません。 この国際的な日付と時間の標準は拡張フォーマットのCCYY-MM-DDThh:mm:ss+/-Zで、「CC」は世紀、「YY」は年、「MM」は月、「DD」は日を表します。 「T」は日付と時間の区切り符、「hh」「mm」「ss」はそれぞれ時、分、秒を表します。 この表現の直後に「Z」がついて調整ユニバーサル時(UTC)を示すことができます。 標準時を示すために、「Z」の前に「+」または「-」記号が付けられ、UTCとの差はhh:mmで表されます。

TimedSubscriptionのスケジュール定義が共有スケジュールであれば、共有スケジュールのスケジュールIDをMatchDataパラメータとして渡す必要があります。 スケジュールIDは Stringとして渡されます。例えば「4608ac1b-fc75-4149-9e15-5a8b5781b843」などです。 スケジュールIDは ListSchedules メソッドを呼び出して取得できます。

XmlSerializerクラスを使って、オブジェクトクラスを自動的にXML文字列に変換できます。 XmlSerializerクラスの詳細については、Microsoft .NET Frameworkドキュメントの「System.Xml.XmlSerializer Class」をご覧ください。

イベントがスナップショット更新サブスクリプションの場合、MatchDataパラメータの値はnull(Visual BasicではNothing)にすべきです。

適用対象