JCL返回码FLUSH

3

//STE1 如果 RC 等于 1,那么

....

//ENDIF

返回代码给了我 FLUSH,因此所有其他作业都没有执行, 有人能帮我吗? 这是因为我没有写 ELSE 吗?


许多旧操作系统使用作业控制语言(JCL)一词。您指的是哪个具体的操作系统?另外,是什么返回代码,FLUSH是什么?我认为您需要在这个问题中添加更多信息。 - AdrianHHH
1
我在谈论主机JCL,而STE1正在返回FLUSH。 - user3248637
2个回答

1
如果你有运行步骤的条件,无论是COND还是IF,且该条件决定了步骤不被运行,那么该步骤将没有“返回码”。该步骤未被运行,被FLUSHed,因此没有RC。
如果你的JOB中其余步骤期望在RC = 0上运行,则必须更改一些内容。
请参考JCL参考手册,你有其他选项,如EVEN、ONLY,但这些选项可能不适合(不知道你究竟在尝试什么)。
//STEPA 
...
//STEPB
...
//STEPC

如果STEPB依赖于STEPA,那么在STEPA的RC为零时,STEPB将不会运行,您需要决定STEPC需要什么。您有三种情况:STEPB未运行;以零RC运行;以非零RC运行。在每种情况下,STEPC应该怎么做。
如果STEPC没有条件处理,则它将只运行发生在STEPB上的任何事情(除了异常和没有EVEN)。
如果STEPC需要有条件地运行,您必须决定STEPA和STEPB中的哪些内容告诉您如何运行它。
如果您的JOB很大,而且条件很复杂,请考虑将其拆分为单独的JOB,并让计划程序来处理。
如果您的JCL用于生产环境,则应遵循JCL标准,如果您不清楚如何执行某项任务,则应咨询负责生产JCL的人员,他们会告诉您他们想要什么,以及您是否需要关注它(因为他们可能会从头开始重新编写)。

这是JCL消息 SAS FIND-步骤已执行-条件码0000 SAS SAMPLE-由于语句551上的条件表达式而未运行步骤JCL中的第551行 // STEPRC1 IF RC EQ 1 THEN // SAMPLE EXEC BFSAS ... // ENDIF - user3248637
谢谢Bill,我会查看并根据您提供的信息进一步处理。非常感谢。 - user3248637
好的。祝你好运。如果你在评论上“悬停”,你可以删除它们。这样会使事情更整洁。评论是“二等公民”,一旦它们达到了它们的目的,就可以被删除。 - Bill Woodger

-1
当由于COND参数或其他原因跳过JOB中的特定步骤时,将在spool中显示什么返回代码?

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接