SSIS多循环传播不起作用

时间:2012-01-23 13:26:12

标签: sql sql-server-2005 ssis

我的SSIS包尝试遍历人员列表(在表格中),然后向这些人发送报告列表。

如果没有生成其中一个报告(excel文件),我希望包不会失败,而是继续。

我已经阅读了几篇关于将传播值设置为“false”的文章,这应该意味着错误不会冒泡到包含循环。

仍然如此:(

我在“发送电子邮件任务”上将最大错误设置为0,并添加了一个错误事件,其传播值设置为“false”

事件失败但也失败了上面的循环,因此也失败了。

我甚至添加了一个序列容器,看看是否有帮助!没有快乐:(

我能让它工作的唯一方法是将所有循环的最大错误计数设置为0,这似乎是错误的。

SSIS

1 个答案:

答案 0 :(得分:5)

容器的“最大错误计数”忽略在子项上设置的任何传播设置。它允许您定义容器本身失败之前允许在任何子项中发生的错误数。这里的想法是,您可能会遇到这样的情况:只有当10个子项失败时,您希望父项失败,无论它们在哪里失败。

如果您想要防止这种情况发生,您需要将计数更改为0,这将关闭此检查,并允许您的子项目失败多次。

在您的情况下,无论有多少子项失败,您都希望循环始终继续。

  1. 当任务失败时,将邮件任务设置为 not 使父级失败。
  2. 更改容器对象上的设置以使最大错误计数为零,并将“此任务失败时父项失败”更改为true。
  3. 设置完成后,邮件任务将失败,但循环将继续。如果流中的另一个项目失败,则错误传播将使父组在链中失败。