日期:2014-05-18  浏览次数:20473 次

关于SSIS 脚本任务执行后判断后续任务是否执行
其实和昨晚的问题还有关系,现在我通过写脚本可以选出最新月份的excel,并设了一个变量在找到最新的excel时将该变量的值置为1,问题是,脚本执行后怎么根据这个设定的变量来控制后续的控制流任务是否执行呢?

我的设想是为那个变量为1的时候就执行后续任务,为0的时候就不执行后续,继续foreach容器循环。

我是应该在连接两个任务之间的那个优先约束那里写表达式还是要做别的处理?

今天在优先约束那里尝试过,可能表达式写得不对,没按照我的设想运行。

在此求教各位大神,谢谢帮助。




------解决方案--------------------
脚本任务新建的时候,会有一个变量默认设置为successful的。这个是脚本的输出结果。
你可以在脚本编写的时候按照情况赋值,然后在流程里面,流程箭头根据脚本输出结果成功,失败,或者完成执行各个不同的后续任务。

看你的描述,脚本是写在foreach容器里面的,我不清楚为什么,但是感觉没有必要。因为如果没有找到新文件,后续任务就不用执行。如果你用foreach容器是为了找新文件,直接写在脚本任务中就可以。

------解决方案--------------------
你这个脚本任务是在foreach里面吧?
如果是,则在脚本任务和数据流任务间设置优先级约束。为表达式约束。
@[用户::变量名]==1