SSIS 如何强制执行祖父容器的结果成功

本文关键字:结果 成功 强制执行 SSIS | 更新日期: 2023-09-27 18:36:34

非常感谢您的帮助和见解

在 SSIS 中,我需要强制执行结果 = 祖父容器的成功

这就是我目前设置软件包的方式:
父包 = A
儿童套餐 = B
- 执行包任务从 A
调用 B- 如果 B 失败并出现特定错误代码,我会重试 B
我使用脚本任务通过 A 的执行包任务中的 OnError 事件处理程序重试 B.
对我的思维方式:
- A 的执行包任务 OnError 事件处理程序是脚本任务的父容器
- A 的执行包任务是脚本任务的祖父容器
当 B 重试成功时,如何强制执行结果 = 祖父容器(A 的执行包任务)的成功?

现在,即使 B 重试成功,A 的执行包任务仍显示红色 = 失败,这是第一次 B 尝试失败的结果。

寻找一种在脚本任务中使用 C# 或 VB 执行此操作的编程方法。

我正在使用 SSIS 2008

感谢您的阅读

SSIS 如何强制执行祖父容器的结果成功

主要建议不要在事件OnError重新运行包 B。您需要调用 B,确保它不会使包 A 失败,评估包 B 的结果并决定该怎么做。

  1. 创建一个For Loop容器并使其运行设定的次数(= 最大运行次数,如while i < 5 do)。

  2. Execute Package任务设置为在出错时不会使父包和整个包失败。

  3. 评估Script Task中的执行代码,并在成功/失败情况下退出For Loop容器。(如通过设置 i=5)。

也许您可以从 C# Script Task 执行包 B - 检查对象模型如何执行此操作。如果我找到方法,我会更新我的答案。