2017-01-27 9 views
0

タスクが失敗したときに電子メールを送信し、タスクの名前を知らせるSSISパッケージがあります。私はより具体的なエラーを取得しようとしています。以下のコードを私のVBスクリプトタスクに追加しましたが、エラーは発生しません。SSIS VBスクリプトでエラーが電子メールに送信される方法

エラーを保持する文字列変数[User :: EmailError]があります。私はReadWriteVariablesとしてこの変数を自分のタスクに設定しています。私はエラーをキャプチャし、変数に配置する以下のコードがあります。また、スクリプトのタスクプロパティ 'FailPackageOnFailure'をtrueに設定しました。

Try 
     smtpServer.Send(email) 
    Catch ex As Exception 
     Dts.Variables("EmailError").Value = ex.ToString 
     Dts.TaskResult = ScriptResults.Failure 
    End Try 

私は、メールタスクを送信するスクリプトタスクに対して、messagsourceに次の式を使用してOnErrorイベントハンドラをセットアップしました。

"The Send User Email script failed with the following error:" 
[email protected][User::EmailError] 

私は電子メールを受け取りますが、変数は常に空です。

答えて

0

Try/Catch以外のメールメッセージに「To」メールアドレスを割り当てると、スクリプトにエラーが発生していました。 Tryを移動したところ、エラーが検出され、正常に電子メールで送信されました。

関連する問題