1

我有一个包,其中包含几个包含和任务。如果在加载过程中发生任何错误,我已经使用错误事件处理程序中的发送邮件任务来发送邮件。但是每当包中发生错误时,发送邮件任务就会执行两次或三次(发送邮件),错误描述不同。我只需要收到一封包含所有错误描述的邮件,而不是多封邮件。

请让我知道如何实现这一目标。

4

1 回答 1

2

不要立即在事件处理程序中发送邮件,而是先将所有错误累积到一个字符串数组,然后使用控制流中的另一个脚本任务,通过“缝合”字符串数组中的项目来组成邮件正文。最后,在控制流的发送邮件任务中使用“缝合”消息。

  1. 创建一个对象类型的变量。
  2. 在您的控制流中,将所有任务放在一个序列容器中,除了发送邮件任务。
  3. 为 #2 中创建的序列容器的 On Error 事件添加事件处理程序,然后添加将 System::ErrorDescription 的值存储到字符串数组的脚本任务。确保您没有覆盖上一个错误中字符串数组的内容。将字符串数组存储到 Object 类型的变量中。
  4. 在控制流中,添加一个脚本任务以将字符串数组的内容“缝合”到单个变量中,以用作发送邮件任务的主体。通过失败优先约束将脚本任务连接到序列容器。
  5. 在脚本任务之后添加发送邮件任务。
于 2015-04-25T08:41:34.480 回答