PipelineComponent.Validate メソッド

定義

重要

この 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プロパティが上流コンポーネントのIDTSOutputColumn100LineageIDと一致しないIDTSInputColumn100オブジェクトの存在をチェックします。 コンポーネント開発者は、ComponentMetaDataに対して追加のチェックを行うことでベースクラスValidate機能を拡張すべきです。 各コンポーネントには検証成功のための要件が異なりますが、以下のリストでは検証すべき一般的な項目をいくつか紹介します。

  • コンポーネントが期待される数の IDTSInput100IDTSOutput100 オブジェクトを持っているかを確認しましょう。

  • 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 呼び出しは省略され、コンポーネント実行前にメソッドが呼び出されます。

詳細については、「データ フロー コンポーネントの検証」を参照してください。

適用対象