タスクが失敗したときに電子メールを送信し、タスクの名前を知らせる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]
私は電子メールを受け取りますが、変数は常に空です。