SSIS检查就绪标志

时间:2009-01-06 18:57:50

标签: ssis

我需要SSIS包的帮助。我有一个服务器填充数据库表作为日常工作的一部分。然后服务器写入进程状态表,让我知道它已完成。

流程状态表如下所示:

Job   | Ready | Downloaded
myJob    True     False

我想创建一个流程来检查myJob上的Ready Flag是否为True并继续,或者如果为False,它会在再次尝试之前休眠30分钟并重复最多5次。

我发现这篇关于如何做睡眠部分的文章: http://blogs.conchango.com/jamiethomson/archive/2006/10/23/SSIS_3A00_-Put-a-package-to-sleep.aspx

我在考虑使用文件系统任务来访问进程状态表。然后将变量设置为Ready标志的值。然后有一个For循环容器,如果true跳出for循环并继续,如果为false则运行sleep然后运行另一个文件系统任务并将变量设置为Ready标志的值。我的主要问题是如何将变量设置为就绪标志的值?

2 个答案:

答案 0 :(得分:1)

如果你有一个For循环容器,你可以放置一个“ExecuteSql”任务来提取你的状态值(即假),然后使用“ScriptTask”来存储它或根据需要操作它。然后,您可以继续处理for循环容器的内容(这可能是数据流任务或您使用的任何内容)。

答案 1 :(得分:1)

我能够弄明白。

我使用了一个带有OLE DB源和脚本组件的数据流任务。 脚本组件读取并处理数据库数据,执行一些基本的if else逻辑,并写入系统变量。

我稍后在for循环中使用该系统变量。