PipelineComponent.Validate メソッド
コンポーネントが正しく構成されていることを確認します。
この API は、CLS に準拠していません。
名前空間: Microsoft.SqlServer.Dts.Pipeline
アセンブリ: Microsoft.SqlServer.PipelineHost (Microsoft.SqlServer.PipelineHost.dll)
構文
'宣言
<CLSCompliantAttribute(False)> _
Public Overridable Function Validate As DTSValidationStatus
'使用
Dim instance As PipelineComponent
Dim returnValue As DTSValidationStatus
returnValue = instance.Validate()
[CLSCompliantAttribute(false)]
public virtual DTSValidationStatus Validate()
[CLSCompliantAttribute(false)]
public:
virtual DTSValidationStatus Validate()
[<CLSCompliantAttribute(false)>]
abstract Validate : unit -> DTSValidationStatus
[<CLSCompliantAttribute(false)>]
override Validate : unit -> DTSValidationStatus
public function Validate() : DTSValidationStatus
戻り値
型: Microsoft.SqlServer.Dts.Pipeline.Wrapper.DTSValidationStatus
コンポーネントの状態を示す DTSValidationStatus 列挙の値です。
説明
Validate メソッドは、コンポーネントが正しく構成されていることを確認するために、コンポーネント開発者によってオーバーライドされます。 パッケージのデザイン時、およびコンポーネントの実行前に一度、繰り返して呼び出されます。 コンポーネントは、Validate の間は ComponentMetaData を変更しません。
Validate の基本クラス実装では、LineageID プロパティが上流コンポーネントの IDTSOutputColumn100 の LineageID に一致しない IDTSInputColumn100 オブジェクトの有無を確認します。 コンポーネントを開発する場合は、ComponentMetaData の追加チェックを行うことにより、基本クラスの Validate 機能を拡張します。 各コンポーネントで検証が正常終了するための要件は異なりますが、次の一覧に、検証の必要がある一般的な項目のいくつかを示します。
コンポーネントが予期された数の IDTSInput100 オブジェクトおよび IDTSOutput100 オブジェクトを持っていることを確認します。
任意の IDTSCustomProperty100 オブジェクトが引き続き存在し、正しい値を含むことを確認します。
コンポーネントが接続を使用する場合、コンポーネントは IDTSRuntimeConnection100 が指定されていること、および ConnectionManager がパッケージに存在することを確認する必要があります。
コンポーネントは、検証に失敗するとユーザーにフィードバックを提供する必要があります。 フィードバックは、FireError メソッドと FireWarning メソッドを介して提供され、DTSValidationStatus 戻り値で示されます。 FireError および FireWarning の呼び出しは、SQL Server データ ツール (SSDT) の [エラー一覧] ウィンドウに表示され、ユーザーに検証の失敗に関する手引きを示します。 DTSValidationStatus 列挙の 4 つの値のうち、VS_ISVALID だけが検証の正常終了を示します。 他の 3 つの値は、さまざまなレベルの失敗を示します。 次の表に、列挙内の失敗の値と、それらが SSIS デザイナーでどのように解釈されるかを示します。
状態 |
説明 |
---|---|
コンポーネントは正しく構成されていないが、ユーザーが ComponentMetaData を変更することにより問題が解決することを示します。 |
|
検証エラーが ReinitializeMetaData メソッドの実装において、コンポーネントによって修正可能であることを示します。 VS_NEEDSNEWMETADATA が呼び出され、続いて ReinitializeMetaData が呼び出されると、SSIS デザイナーは、コンポーネントが自身を修復できることをユーザーに示します。 |
|
ComponentMetaData が壊れていて、ReinitializeMetaData の呼び出しまたはコンポーネントの編集によって修復できないことを示します。 |
データ フロー タスクの DelayValidation プロパティが true である場合、デザイン時の Validate の呼び出しは除去され、コンポーネントの実行前にこのメソッドが呼び出されます。
詳細については、「データ フロー コンポーネントの検証」を参照してください。