如何以编程方式更改SSIS控制流任务之间的工作流?

3

我有一个SSIS包,根据布尔变量的值,应该转到脚本任务或电子邮件任务。(注:路径是从脚本任务中获取的)

我记得在旧的dts设计师中,可以通过代码实现这一点。在SSIS中实现这一点的正确方法是什么?

3个回答

5
"条件分割"不就是一个数据流任务吗?它根据数据的某些属性将一行数据推向两个方向之一吗?哎呀,你说得对。我找到了这篇博客文章,其中解释了如何基于布尔值进行适当的控制流条件分支。请参阅:此处。"

2

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

我经常这样设置,很多时候您希望在某些条件适用时发送电子邮件。条件约束的标准语法类似于:

@[User::SendEmail] == True

假设您的SendEmail变量是布尔型。如果使用其他类型,请构造一个表达式,该表达式评估为真或假。
记得将条件设置为OR而不是AND,否则它不会完成,除非可以同时采取两种路线!

0
一个条件分割任务可以实现你想要的功能。添加条件分割任务,添加额外的输出(默认输出已提供),并设置该输出的条件。然后根据需要将输出(默认和新的)与脚本和电子邮件任务连接起来即可。

很遗憾,条件拆分任务在数据流中。这两个可用的路径来自脚本任务。我可能应该更加具体一些。 - D.S.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接