时常看到大家有追数需求(关键字 一次 运行N 个批次,不用人工干预),其实只要设计的作业是通过传参来决定的批次等,那么用TASKCTL是非常方便的,下面给大家示范一下是如何实现的。
在这之前大家先需要了解如下几个知识点
1、主流程的控制逻辑 ( 微信知识库编号 4200 )
2、主流程的触发设计 ( 微信知识库编号 5002 、3810等 )
3、condition属性的使用 ( 微信知识库编号 3520 )
4、modivarv 作业类型的使用 ( 微信知识库编号 3458)
准备好如上知识点后,我们就可以开始动手做一个追数流程了
1、先参照 初级范例工程----范例一:定时调度业务流程方法一 创建一个类似的主流程
包含如下几个元素
a、私有变量 (startdatetime启动触发时间、workdate业务日期、sleep_para睡眠时长)(变量名随便定义,无任何实际含义)
b、睡眠作业和打印参数作业
此时,就是启动时如果正确输入合理的你是就可以实现 定时功能
如当前时间为 2020年5月20日 17点43分
我设计的这个流程希望每天1点运行,规则是T+1,及20200521的的一点跑20200520的数据
然后我此时我就可以在Monitor启动时
输入 启动触发时间startdatetime值为 20200521010000 ;
workdate值为 20200520 即可
其实此时已经可以实现追数,因为每次流程是判断启动触发时间控制节点的condition条件,满足则可以运行,后续依赖它的即可运行。
如果我希望它自动从20200501这个业务日期追到最新的20200519来,并等待时间到20200521010000运行20200520的批次,此时我启动流程时 输入的参数调整为 startdatetime值为 20200502010000 ;workdate值为 20200501 即可 。此时即可完成这期间的追数。
-----------------------------2020.05.20.18:55更新
附当前和后续两楼样例,可以通过Admin客户端导入测试
解压后得到taskctl专用 exm文件格式,用Admin客户端即可导入
[最后编辑于 2020-05-20 19:00 ]
请登录后评论~