// STE1 IF RC EQ 1那么
...
// ENDIF
返回代码给了我FLUSH,所有其他工作都没有执行,因为这个 谁可以帮我这个事。 是因为我没有给ELSE?
答案 0 :(得分:1)
如果您有运行步骤的条件(COND或IF),并且条件确定未运行步骤,则步骤中没有“返回代码”。该步骤未运行,它是FLUSHed,因此没有RC。
如果你的JOB中的其余步骤预计在RC = 0上运行,那么你将不得不改变一些东西。
参考JCL参考,你有其他的选择,比如EVEN,ONLY,但这些可能不适合(没有线索,因为不知道你在想什么)。
//STEPA
...
//STEPB
...
//STEPC
如果STEPB依赖于STEPA,那么不会使用STEPA的零RC运行,您需要确定STEPC需要什么。你有三种情况:STEPB没有运行;以零RC运行;使用非零RC运行。 STEPC应该做些什么。
如果STEPC没有条件处理,那么它将只运行STEPB发生的任何事情(除了异常终止,没有偶然)。
如果STEPC需要有条件地运行,你必须决定STEPA和STEPB的内容,它告诉你如何运行它。
如果您的JOB很大且条件复杂,请考虑将其拆分为单独的JOB并让Scheduler处理它。
如果您的JCL注定要生产,那么应该遵循JCL标准,如果您不清楚如何做某事,您应该咨询负责生产JCL的人员,他们会告诉您他们的需求,以及是否你甚至需要关注它(因为他们可能只是从头开始重写)。
答案 1 :(得分:-1)
当由于 COND 参数或任何其他原因跳过 JOB 中的特定步骤时,将在 spool 中显示的返回代码是什么