【问题标题】:How to programmatically change the work flow between SSIS control flow tasks?如何以编程方式更改 SSIS 控制流任务之间的工作流?
【发布时间】:2008-09-24 14:44:54
【问题描述】:

我有一个 SSIS 包,它取决于一个布尔变量,应该转到脚本任务或电子邮件任务。(注意:路径来自 脚本任务)

我记得在旧的 dts 设计器中,有一种方法可以通过代码来实现。在 SSIS 中完成此任务的正确方法是什么?

【问题讨论】:

    标签: sql-server ssis


    【解决方案1】:

    条件拆分不是数据流吗 任务,它需要一行数据和 将其推向两个方向之一 根据某些属性 数据???

    糟糕,这是正确的。我发现 this 博客文章解释了如何根据布尔值进行适当的控制流条件分支。

    【讨论】:

      【解决方案2】:

      在控制流中,将绿色箭头拖到电子邮件任务上,然后右键单击它,您将看到可以将其从“已完成”设置为“条件”,然后您可以在条件上设置表达式。然后箭头将变为蓝色。然后,您应该能够将另一个箭头拖动到另一个脚本,并将其设置为有条件的。

      我经常有这样的设置,很多时候你想在特定条件适用时发送电子邮件。条件约束的标准语法类似于:

      @[User::SendEmail] == True
      

      假设您的 SendEmail 变量是一个布尔值。如果您使用其他任何东西,只需构造一个计算结果为真或假的表达式。

      记得将条件设置为 OR 而不是 AND,否则它不会完成,除非它可以同时走两条路线!

      【讨论】:

        【解决方案3】:

        条件拆分任务可以满足您的需求。添加条件拆分任务,添加额外的输出(提供默认输出),并为该输出设置条件。然后根据需要将输出(默认和新)与脚本和电子邮件任务联系起来。

        【讨论】:

        • 很遗憾,条件拆分任务在数据流下。两个可用路径来自脚本任务。我可能应该更具体。
        猜你喜欢
        • 2014-07-16
        • 1970-01-01
        • 1970-01-01
        • 2015-11-22
        • 2015-09-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多