1、作业调度对返回码的处理区间依据 JCI 的返回码区间和 Control-M 的处理机制,我们定义作业调度对返回码的处理方式和区间如下:1返回码是作业依赖处理的唯一条件,即存在逻辑依赖的作业,其启动条件为所有前序作业均已成功完成。2Control-M 作为调度工具,本身不会生成作业的返回码,作业返回码由JCI 或操作系统生成,即正常情况下 JCI 向调度返回。3所有作业初始态均以循环方式(Control-M 中的 cyclic)执行,并根据返回码决定继续循环执行,或者终止执行,具体处理见下表。4当用户在监控界面对作业或作业流执行重启或翻牌操作时,作业的状态被重置为初始态。5直接在后台进行 JCI
2、 或调度的状态修改,将导致调度和 JCI 的作业状态不一致,不允许这样的操作。返回码区间 JCI 返回含义 调度中的处理 备注09 成功 认为作业成功,不再执行该作业1039 错误 认为作业失败,不再执行该作业Cycle 或作业状态不允许执行4079 不成功,允许重调 认为作业可重试,以 5分钟为间隔,重复执行该作业,直至成功包括文件未到达和资源不满足的重试80100 错误 认为作业失败,不再执行该作业系统或数据库错误导致的无法执行100 暂未定义 认为作业失败,不再执行该作业上述处理方式和区间范围目前已固化到作业调度的每个作业配置中,并对各个区间做了预留,需要调度组和开发组共同遵照执行。附
3、JCI 返回码定义表1. JOB 执行成功退出码 说明00 Job 实例执行成功完成(成功);01 Job 实例已经完成,不允许再次执行(调度应认为成功);02 作业本日无须执行(调度应认为成功 );03 作业依赖的输入文件未就绪(调度应认为成功);2. 状态问题(正常情况下不应该出现下列退出码 )20 Cycle 的状态不允许执行 InitCycle(检查 Cycle 状态,不能启动后续作业);21 Cycle 的状态不允许执 TermCycle(检查 Cycle 状态,不能启动后续作业);22 作业正在执行,不允许重复调用;23 Cycle 中还有作业未完成,执行 TermCycle 失败3. 作业执行失败(需要关注查找失败原因 )退出码 说明41 作业执行失败(特指 DS 作业);42 作业执行失败(特指非 DS 作业);4. 作业当前资源不具备,稍后可重新启动 JOB退出码 说明60 文件未就绪61 系统资源不足62 未发现输入文件,InitCycle 失败( 针对不定期文件)63 前序作业未完成64 作业执行失败,可稍后重启5. 系统或数据库错误,JOB 无法运行退出码 说明90 数据库访问错误91 fork 进程失败92 系统故障93 Job 参数配置错误,无法启动 JOB94 执行程序时参数错误95 作业的参数文件不存在