2016-06-29 18 views
0

ループがあり、いくつかの接続をループするパッケージがあります。ループを通る各反復は新しい接続です。問題は、これらの接続がパッケージ実行時にダウンすることがあることです。だから私はエラーを追加し、私たちに電子メール通知を送って、そしてループを続けます。ループが失敗したときにSSISの成功を報告します。

Event Handlersを使用し、Propagateの値をFalseに変更しても問題ありません。しかし、問題は、接続が失敗した場合、ループを終了しますが、パッケージ全体が失敗するということです。 SSMSのジョブの中では、パッケージが完了した後にジョブを停止し、失敗したと報告するため、これは問題です。

このループが失敗した電子メールをキックアウトしても、パッケージレポートを正常に実行する方法はありますか?正当な理由があるかもしれないパッケージの他の部分があり、通知を受ける必要があるため、「次のステップを続行しない」ことを望んでいません。

編集:

ここに私がしていることのスクリーンショットがあります。ループ内にはdataflowタスクがあり、最初にdataflowに接続が失敗することがあります。それが起こると、電子メールタスクが私たちに通知するようにトリガーし、ループを続行します。

残念ながらFailPackageOnFailureは既にfalseに設定されています。失敗したタスク(またはその親コン​​テナ該当する場合)の

Loop

Properties

+0

スクリーンショットは、達成しようとしていることを理解するために**本当に便利でした!続行したい部分を強調表示します。 – BIDeveloper

+0

上記のスクリーンショットを参照してください。 – Caveman42

答えて

0

、falseにFailPackageOnFailureの値を変更します。

ループでこれを行う場合は、FailParentOnFailureもfalseに設定する必要があるかどうかを検討するとよいでしょう。

EDIT:パッケージがFailPackageOnFailure = trueで失敗する原因となっているタスクやコンテナがない場合は、おそらくスクリプトでスクリプトが失敗するように設定していると思われます。エラーカウント<> 0

がでますすべての点を確認した場合、多分あなたのイベントハンドラでは、エラーの数を維持している、その後、パッケージの終わりに、あなたは失敗にパッケージ状態を設定していますスクリプトまたはFailPackageOnFailureプロパティを使用してパッケージを失敗に設定することができます。

+0

残念ながら、 'FailPackageOnFailure'は既にfalseに設定されています。私の編集で私のスクリーンショットを見てください。 – Caveman42

0

あなたができる成功にForceExecutionResultプロパティを設定することで、成功への実行結果の偽のForeachループコンテナの(このプロパティのデフォルト値は、なしではありません)。

関連する問題