再上一篇:={MAXIMUM }
上一篇:5. COND
主页
下一篇:6. PARM
再下一篇:PARM[.过程步名]= 子参数 PARM[.过程步名]=( 子参数, 子参数) PARM[.过程步名]=(‘子参数’, 子参数) PARM[.过程步名]=’子参数, 子参数’
文章列表

[,ONLY]

IBM S390 系统管理基础(zSeries,IBMSystemz, z/VM,zOS等操作系统使用,命令的参数与用法等)

(3)COND=EVEN COND=ONLY
利用 COND 参数最多可以有 8 个返回码测试,如果有 EVEN 或 ONLY 时,最多有 7 个
测试。格式(1)只有在先前作业步没有非正常终止时,才能进行该测试。格式(2)、(3) 测试决定于 EVEN 和 ONLY 的设置。
code:系统使用 code(测试码)与先前作业步或某特定作业步的返回码进行比较。Code
的取值范围为:0~4095。
operater:表示 code 与返回码的比较类型,这些比较的操作符是:GT(大于)、GE(大 于等于)、EQ(等于)、NE(不等于)、LT(小于)、LE(小于等于)。
作业步名:指定先前某一作业步,并用该作业步的返回码与本作业步的测试码进行比较。 当省略作业步名时,表示本作业步的测试码将与先前所有作业定额的返回码进行比较测试。
作业步名.过程步名:指定先前某一作业步调用过程的过程步。系统将用该过程步的返 回码与给定的测试码进行比较。其中该作业步由“作业步名”指定,而过程步由“过程步名” 指定。
EVEN:表示无论即使先前作业步异常终止,本作业步都要执行。当 EVEN 子参数设定
时:

·不测试先前任何的异常终止作业步的返回码。

·测试那些正常完成的作业步的返回码,如果测试条件全部不满足的话,本作业步将执 行。

ONLY:表示只有先前作业步异常终止,本作业步才执行。当 ONLY 子参数设定时:

·不测试先前任何的异常终止作业步的返回码。

·测试那些正常完成的作业步的返回码,如果测试条件全部不满足的话,本作业步将执 行。

EVEN 与 ONLY 的具体情况见下表:

EVEN/ ONLY

先前作业步是否

异常终止?

测试条件是

否满足?

本作业步是否

执行?

EVEN

EVEN

EVEN

EVEN

ONLY

ONLY

ONLY

ONLY

例 1.

//STEP6 EXEC PGM=DISKUTIL,COND=(4,GT,STEP3)

在本例中如果 STEP3 的返回码小于 4,系统将不执行 STEP6。由于没有设置 EVEN 或

ONLY,如果先前的作业步异常终止,系统将不会执行本作业步。 例 2.

//TEST2 EXEC PGM=DUMPINT,COND=(16,GE),(90,LE,STEP1),ONLY)

由于设置了 ONLY 子参数,系统只在以下两种情况满足时执行本作业步:
(1)先前作业步异常终止;
(2)返回值的测试条件都不满足。 那么对于本例来说,系统将会在以下三种情况都满足的情况下执行本作业步:

·一个先前作业步异常终止。

·所有先前作业步的返回码大于等于 17。

·STEP1 的返回码小于等于 89。 例 3.

在本例中,如果 STEP1 的返回码为 4,STEP2 将不被执行。在 STEP3 执行前,系统将
执行第一个返回码测试。而由于 STEP2 并未被执行,所以将不会进行第二个返回码的测试。 由于 8 大于4 所以 STEP3 被执行。
例 4.

//STP4 EXEC PROC=BILLING,COND.PAID=((20,LT),EVEN),

// COND.LATE=(60,GT,FIND),

// COND.BILL=((20,GE),(30,LT,CHGE))

在本例中的 EXEC 语句调用了一个名叫 BILLING 的过程。这条语句中定义了几个不同 的分别对过程步 PAID、LATE、BILL 的返回码的测试。由于设置了 EVEN 子参数,除非相 应的返回值测试满足条件,那么即使先前作业步异常终止,过程步 PAID 都将被执行。