繁体   English   中英

Control-M在每月和每日工作之间添加条件

[英]Control-M add condition between a monthly and a daily job

我正在使用control-M计划一些作业,以下是我面临的情况:

作业1-每天运行(不在特定时间运行)

Job-2-在每月的1号订购,但在10号左右运行(不确定)

现在,我要求Job-2依赖Job-1的执行。 假设Job-2在12日变得“有资格执行”,那么它只能在以下情况下执行:

  1. 12号作业1已成功执行
  2. 如果作业1的执行未计划在第12个执行,则作业2应该检查最后一次成功执行(例如,说第11个执行)

如果作业1的最后一次执行失败,则作业2不应该执行

我试过的是,在Job-2上将IN条件指定为日期,将其设置为PREV,但这似乎并未检查当前日期的job-1执行情况。

->对于job-1,请使用带“ Nodate”的超出条件->对于job-2,请使用job-1的Nodate超出条件作为条件。 一旦该作业2结束,就删除作业1条件。 加上那把工作2淘汰了oate。 ->在job-1前提条件中,检查(无日期的job-1超出条件或具有prevdate的job-2超出条件),并仅在前提条件中使用后删除条件。

执行流程。 因此,作业1将每天运行,并且将带Nodate的条件排除在数据库之外。 第二天运行时,它会检查(job-1的nodate条件或job-2的prev-date out条件)是否可用,然后接受该条件并从数据库中删除相同条件并触发工作1。

每当Job-2即将运行时,它都会在当天检查Job-1的nodate条件。 如果job-1成功,则可以使用nodate outcondition并可以触发job-2。 作业2完成后,作业1的指定日期条件将被删除。 由于第二个作业的nodate条件将不可用,因此第二个作业的当前odate超出条件将在第二天的job-1执行中使用。

谢谢。

有几种解决方法:

第一种是具有作业1的两个版本。作业之间的区别在于日历。 一整天都运行,除了要执行第二天的工作。 第二个仅在第2天运行,并且此作业创建了作业2作为入场条件使用的出场条件。

另一种选择是在作业1上创建一个out条件作为后期处理,然后作业2使用此条件作为in条件,而* *为odate-记住在作业2完成时删除此条件(这始终是一个好习惯) 。

语法为status = *(或sysout中的某些字符串),compstat = OK,请添加条件。

您还可以在作业2中强制执行作业,将其添加到on语句中即可强制执行作业。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM