我的SSIS包尝试遍历人员列表(在表格中),然后向这些人发送报告列表。
如果没有生成其中一个报告(excel文件),我希望包不会失败,而是继续。
我已经阅读了几篇关于将传播值设置为“false”的文章,这应该意味着错误不会冒泡到包含循环。
仍然如此:(
我在“发送电子邮件任务”上将最大错误设置为0,并添加了一个错误事件,其传播值设置为“false”
事件失败但也失败了上面的循环,因此也失败了。
我甚至添加了一个序列容器,看看是否有帮助!没有快乐:(
我能让它工作的唯一方法是将所有循环的最大错误计数设置为0,这似乎是错误的。
答案 0 :(得分:5)
容器的“最大错误计数”忽略在子项上设置的任何传播设置。它允许您定义容器本身失败之前允许在任何子项中发生的错误数。这里的想法是,您可能会遇到这样的情况:只有当10个子项失败时,您希望父项失败,无论它们在哪里失败。
如果您想要防止这种情况发生,您需要将计数更改为0,这将关闭此检查,并允许您的子项目失败多次。
在您的情况下,无论有多少子项失败,您都希望循环始终继续。
设置完成后,邮件任务将失败,但循环将继续。如果流中的另一个项目失败,则错误传播将使父组在链中失败。