スクリプト コンポーネントによるエラー出力の強化
更新 : 2006 年 7 月 17 日
既定では、Integration Services のエラー出力の 2 つの追加列 (ErrorCode と ErrorColumn) には、エラー番号を表す数値コードと、エラーが発生した列の ID しか含まれていません。これらの数値は、対応するエラー説明がないとあまり役に立ちません。
ここでは、スクリプト コンポーネントを使用して、データ フローの既存のエラー出力データにエラー説明の列を追加する方法を説明します。この例では、IDTSComponentMetaData90 インターフェイスの GetErrorDescription メソッドを使用して、事前定義された特定の Integration Services エラー コードに対応するエラーの説明を追加します。これは、スクリプト コンポーネントの ComponentMetaData プロパティから使用できます。
メモ : |
---|
複数のデータ フロー タスクおよび複数のパッケージでより簡単に再利用できるコンポーネントを作成する場合は、このスクリプト コンポーネント サンプルのコードを基にした、カスタム データ フロー コンポーネントの作成を検討してください。詳細については、「カスタム データ フロー コンポーネントの開発」を参照してください。 |
例
次に示す例では、変換として構成されたスクリプト コンポーネントを使用して、データ フローの既存のエラー出力データにエラー説明の列を追加します。
スクリプト コンポーネントをデータ フローで変換として使用するための構成方法の詳細については、「スクリプト コンポーネントによる同期変換の作成」および「スクリプト コンポーネントによる非同期変換の作成」を参照してください。
このスクリプト コンポーネントの例を構成するには
新しいスクリプト コンポーネントを作成する前に、データ フローの上流コンポーネントを構成して、エラーや切り捨てが発生した場合に行をエラー出力にリダイレクトするようにします。テスト目的の場合、たとえば、参照が失敗するような 2 つのテーブル間の参照変換を構成するなどして、エラーが発生するような形でコンポーネントを構成します。
新しいスクリプト コンポーネントを [データ フロー] デザイナ画面に追加し、変換として構成します。
上流コンポーネントからのエラー出力を新しいスクリプト コンポーネントに接続します。
[スクリプト変換エディタ] を開きます。[入力列] ページで、ErrorCode 列を選択します。
[入力および出力] ページで、ErrorDescription という String 型の新しい出力列を追加します。長いメッセージをサポートするために、新しい列の既定の長さを 255 に拡張します。
[スクリプト] ページの [スクリプトのデザイン] をクリックして、Visual Studio for Applications (VSA) スクリプト環境を開きます。Input0_ProcessInputRow メソッドに、以下に示すサンプル コードを入力するか貼り付けます。
VSA IDE と [スクリプト変換エディタ] を閉じます。
スクリプト コンポーネントの出力を、適切な変換先にアタッチします。アドホック テスト用に最も構成しやすいのは、フラット ファイル変換先です。
パッケージを実行します。
Public Overrides Sub Input0_ProcessInputRow(ByVal Row As Input0Buffer)
Row.ErrorDescription = _
Me.ComponentMetaData.GetErrorDescription(Row.ErrorCode)
End Sub
変更履歴
リリース | 履歴 |
---|---|
2006 年 7 月 17 日 |
|
参照
概念
データ フロー コンポーネントでのエラー出力の使用
スクリプト コンポーネントによる同期変換の作成