1

SSISパッケージにカスタムログを実装するプロジェクトがあります。あるデータベースの複数のテーブルから別のデータベースの対応するテーブルにデータを移動するデータフロータスクがあります。データベースAからデータベースBへのテーブルAの移動が失敗した場合、OnTaskFailedイベントで、データフローコンポーネントの名前に失敗したテーブルの名前が含まれているため、その名前をテキストファイルに記録します。とを使用してみSystem::SourceNameましSystem::TaskNameたが、制御フロータスクの名前(SourceName)とイベントハンドラーのスクリプトタスク自体の名前(TaskName)が表示されます。

データフローコンポーネント名を取得する方法はありますか?

4

2 に答える 2

0

これを行う唯一の方法は、DFT GUIDをデータベース/レコードセット内の名前に関連付け、タスクが失敗/成功した後にルックアップを実行することです。これはエレガントではありませんが、それを行う唯一の方法です。注意点として、パッケージでオブジェクトが変更された場合は、データベース側で関連付けを再作成する必要があります。

于 2013-01-31T17:30:35.050 に答える
0

1つのDFTがあり、その中に複数のソースと対応する宛先があるようです。

各テーブルを独自のDFTに入れたり、独自の子パッケージに入れたりするのはどうですか?次に、タスクごとにon errorイベントハンドラーを作成できます。さらに、一般的なエラーハンドラーの子パッケージを作成することもできます。

于 2013-02-02T16:31:29.150 に答える