问题描述
我正在做一个工作设计,它将根据作业从数据库中读取的完成状态触发一个子作业。
如果数据库的返回值为Y,则应执行子作业。如果N中来自数据库的返回值,则作业应休眠,并在15分钟后从数据库中查找返回值。如果返回值为Y,则应执行子作业,否则应使其休眠并进入循环。
我尝试了以下设计方法,但工作停留在tSleep
tSetGlobalVariable-> tLoop-> tRunJob(子作业1)-> tSleep-> tRunJob(子作业2)
如果特定作业已完成,则tRunJob(子作业1)将从数据库中获取状态,并将状态发送回以在While循环上运行。如果状态为Y,则将运行ChildJob2。如果状态为N,则应休眠直到状态更改为Y。
解决方法
您可以使用组件tWaitForSqlData,该组件结合了作业的扫描,睡眠和条件部分。
简化应该可以帮助您查明问题的确切出处。