PipelineComponent.Validate メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
重要
この API は CLS 準拠ではありません。
コンポーネントが正しく設定されていることを確認します。
public:
virtual Microsoft::SqlServer::Dts::Pipeline::Wrapper::DTSValidationStatus Validate();
[System.CLSCompliant(false)]
public virtual Microsoft.SqlServer.Dts.Pipeline.Wrapper.DTSValidationStatus Validate();
[<System.CLSCompliant(false)>]
abstract member Validate : unit -> Microsoft.SqlServer.Dts.Pipeline.Wrapper.DTSValidationStatus
override this.Validate : unit -> Microsoft.SqlServer.Dts.Pipeline.Wrapper.DTSValidationStatus
Public Overridable Function Validate () As DTSValidationStatus
返品
DTSValidationStatus列挙からコンポーネントの状態を示す値です。
- 属性
注釈
Validateメソッドはコンポーネント開発者によって上書きされ、コンポーネントが正しく設定されているかを検証します。 パッケージ設計中に繰り返し呼び出され、コンポーネントの実行前に一度だけ呼び出されます。 部品はComponentMetaData中にValidateを変更してはいけません。
Validateのベースクラス実装は、LineageIDプロパティが上流コンポーネントのIDTSOutputColumn100のLineageIDと一致しないIDTSInputColumn100オブジェクトの存在をチェックします。 コンポーネント開発者は、ComponentMetaDataに対して追加のチェックを行うことでベースクラスValidate機能を拡張すべきです。 各コンポーネントには検証成功のための要件が異なりますが、以下のリストでは検証すべき一般的な項目をいくつか紹介します。
コンポーネントが期待される数の IDTSInput100 と IDTSOutput100 オブジェクトを持っているかを確認しましょう。
IDTSCustomProperty100オブジェクトが存在し続け、正しい値が含まれているかを確認しましょう。
コンポーネントが接続を使用している場合、 IDTSRuntimeConnection100 が指定されていること、そして ConnectionManager がパッケージ内に存在していることを検証すべきです。
コンポーネントは検証に失敗した際にユーザーにフィードバックを提供するべきです。 フィードバックは FireError 法および FireWarning 法、そして DTSValidationStatus 戻り値によって提供されます。 FireErrorおよびFireWarningへの呼び出しはSQL Server Data Tools(SSDT)のエラーリストウィンドウに表示され、検証失敗に関するユーザーの指針を提供するはずです。 DTSValidationStatus列挙の4つの値のうち、検証が成功したことを示すのはVS_ISVALIDだけです。 他の3つの値は故障のレベルが異なります。 以下の表は、列挙中の故障値とSSISデザイナーによる解釈について説明します。
| 地位 | 説明 |
|---|---|
| VS_ISBROKEN | コンポーネントの設定が誤っていないことを示しますが、ユーザーが ComponentMetaData を変更しれば問題が解決します。 |
| VS_NEEDSNEWMETADATA | ReinitializeMetaDataメソッドの実装において、コンポーネントが検証エラーを修正できることを示します。 SSIS Designerはコンポーネントが VS_NEEDSNEWMETADATA時には自己修復可能であることをユーザーに促し、その後 ReinitializeMetaData 呼び出しを行います。 |
| VS_ISCORRUPT | ComponentMetaDataが破損しており、ReinitializeMetaDataへの呼び出しやコンポーネントの編集で修復できないことを示します。 |
データフロータスクの DelayValidation プロパティが trueされると、設計時の Validate 呼び出しは省略され、コンポーネント実行前にメソッドが呼び出されます。
詳細については、「データ フロー コンポーネントの検証」を参照してください。