変更の始まり

自由形式ステートメント内の条件付き指示

自由形式演算ステートメントを除くすべての自由形式ステートメントの内部で、/IF、/ELSEIF、/ELSE、および /ENDIF 指示 を使用できます。

ただし、以下の規則が適用されます。
  • /IF、/ELSEIF、または /ELSE 指示の後でステートメントが始まっている場合、 次の指示の前に、そのステートメントの最後のセミコロンが指定されなければなりません。
    次のコードは無効です。DSPLY ステートメントは /IF 指示の 後で始まっているので、この DSPLY ステートメントに対するセミコロンが /ELSE 指示の 前に指定される必要があります。
       /IF DEFINED(TRUE)
           DSPLY
       /ELSE
           print
       /ENDIF
             ('start');
  • 条件付きグループの /IF がステートメント内で始まっている場合、 そのステートメントの最後のセミコロンの前に /ENDIF が指定されなければなりません。
次のコードでは、DCL-S ステートメントが始まった後に /IF 指示が 指定されていて、この DCL-S ステートメントに対する最後のセミコロンの後に /ENDIF が 指定されているため、このコードは無効です。
   DCL-S name
     /IF DEFINED(TRUE)
       CHAR(10);
     /ELSE
       VARCHAR(10);
     /ENDIF
変更の終わり