7.72.2 IF_MODE の使用例

以下は、IF_MODEコマンドの例です。 
NAMESというファイルに対して単純な照会/追加/更新/削除を行うファンクションを作成します。IF_MODEコマンドを使用して、\[OK\]キーが押されたときの画面のモードを検査します。 
     GROUP_BY NAME(#NAMEINFO) FIELDS(#CUSTNO #NAME #ADD1 #ADD2 #POSTCD)   L10: CHANGE   FIELD(#CUSTNO) TO(*DEFAULT)       MESSAGE  MSGTXT('Specify customer to review or use ADD key to add one')   L15: SET_MODE TO(*DISPLAY)     REQUEST  FIELDS(#CUSTNO) ADD_KEY(*YES)     *     * Add a new customer to the file ......     *     IF_MODE  IS(*ADD)          REQUEST  FIELDS(#NAMEINFO)          INSERT   FIELDS(#NAMEINFO) TO_FILE(NAMES)     *     * Else review / change / delete an existing customer     *     ELSE          FETCH    FIELDS(#NAMEINFO) FROM_FILE(NAMES) WITH_KEY(CUSTNO) NOT_FOUND(L15) ISSUE_MSG(*YES)            DISPLAY  FIELDS(#NAMEINFO) CHANGE_KEY(*YES) DELETE_KEY(*YES)            IF_MODE  IS(*CHANGE)          UPDATE   FIELDS(#NAMEINFO) IN_FILE(NAMES)          ENDIF            IF_MODE  IS(*DELETE)          DELETE   FROM_FILE(NAMES)          ENDIF       ENDIF     *     * Go back and request next customer     *     GOTO     LABEL(L10)