MFBSI は、最大 3 つのネストされた %%IF レベルをサポートしています。
この例は、%%IF、%%ELSE、および %%ENDIF 変数置換を示しています。
文/式 | 解決結果 |
---|---|
//* %%SET %%STEP=STEP1 //* %%IF %%STEP EQ STEP1 //STEP1 EXEC PGM=IEFBR14 //* => To be executed //SYSOUT DD SYSOUT=* //* %%ELSE //STEP2 EXEC PGM=IEFBR14 //* => To be excluded //SYSOUT DD SYSOUT=* //* %%ENDIF //* => Always executed //STEP3 EXEC PGM=IEFBR14 //* => Always executed //SYSOUT DD SYSOUT=* |
//* %%SET %%STEP=STEP1 //* %%IF STEP1 EQ STEP1 //STEP1 EXEC PGM=IEFBR14 //* => To be executed //SYSOUT DD SYSOUT=* //* %%ELSE //* %%ENDIF //* => Always executed //STEP3 EXEC PGM=IEFBR14 //* => Always executed //SYSOUT DD SYSOUT=* |
//* %%IF %%STEP NE STEP1 //STEP1 EXEC PGM=IEFBR14,PARM='%%DATE' //* => To be excluded //SYSOUT DD SYSOUT=* //* %%ELSE //STEP2 EXEC PGM=IEFBR14,PARM='%%ODATE' //* => To be executed //SYSOUT DD SYSOUT=* //* %%ENDIF //* => Always executed //STEP3 EXEC PGM=IEFBR14,PARM='%%RDATE' //SYSOUT DD SYSOUT=* |
//* %%IF STEP1 NE STEP1 //* %%ELSE //STEP2 EXEC PGM=IEFBR14,PARM='110716' //* => To be executed //SYSOUT DD SYSOUT=* //* %%ENDIF //* => Always executed //STEP3 EXEC PGM=IEFBR14,PARM='110716' //SYSOUT DD SYSOUT=* |
//* %%SET %%STEP=STEP2 //* %%IF %%STEP EQ STEP1 //* %%ELSE //STEP1 EXEC PGM=IEFBR14 //* => To be executed //SYSOUT DD SYSOUT=* //* %%ENDIF //STEP2 EXEC PGM=IEFBR14 //* => Always executed //SYSOUT DD SYSOUT=* |
//* %%SET %%STEP=STEP2 //* %%IF STEP2 EQ STEP1 //* %%ELSE //STEP1 EXEC PGM=IEFBR14 //* => To be executed //SYSOUT DD SYSOUT=* //* %%ENDIF //STEP2 EXEC PGM=IEFBR14 //* => Always executed //SYSOUT DD SYSOUT=* |