Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

[ Image Added |../../index.htm#lansa/continue_e.htm]
現在地:

Anchor
_Ref428884948
_Ref428884948
Anchor
_

...

Toc139468536
_

...

Toc139468536
7.18.3 CONTINUE の使用例

BEGIN_LOOP ループ内で CONTINUE を使用する
SELECT 内で CONTINUE を使用する

Anchor
CONTINUE_EX1
CONTINUE_EX1
BEGIN_LOOP ループ内で CONTINUE を使用する
この例は、BEGIN_LOOP ループ内で CONTINUE コマンドを使用する方法を示しています。
DEF_LIST   NAME(#EMPBROSWE) FIELDS(#EMPNO #SURNAME #GIVENAME #DEPTMENT)             BEGIN_LOOP  REQUEST    FIELDS(#EMPNO) BROWSELIST(#EMPBROSWE) FETCH      FIELDS(#EMPNO #SURNAME #GIVENAME #DEPTMENT) FROM_FILE(PSLMST) WITH_KEY(#EMPNO)             IF_STATUS  IS_NOT(*OKAY) MESSAGE    MSGTXT('That employee could not be found!') CONTINUE    ENDIF                   ADD_ENTRY  TO_LIST(#EMPBROSWE) END_LOOP  
要求された社員番号が見つからない場合、メッセージが発行され、CONTINUE コマンドによってプログラム制御が ADD_ENTRY コマンドにスキップし、REQUEST コマンドでループの先頭に戻ります。
Anchor
CONTINUE_EX2
CONTINUE_EX2
SELECT 内で CONTINUE を使用する
この例は、SELECT ループ内で CONTINUE コマンドを使用する方法を示しています。この例では、追加のユーザー・ファンクション・キーを使用して、選択したレコードを表示したり、必要に応じて削除したりできます。
DEF_COND   NAME(*DROPPED) COND('#IO$KEY = ''09''') DEF_LIST   NAME(#EMPBROWSE) FIELDS(#SECTION #EMPNO #SURNAME #GIVENAME) DEF_LIST   NAME(#EMPSELECT) FIELDS(#SECTION #EMPNO #SURNAME #GIVENAME)             SELECT     FIELDS(#EMPBROWSE) FROM_FILE(PSLMST) DISPLAY    FIELDS(#SECTION #EMPNO #SURNAME #GIVENAME) BROWSELIST(#EMPBROWSE) USER_KEYS((09 'Drop')) CONTINUE   IF(*DROPPED) ADD_ENTRY  TO_LIST(#EMPBROWSE) ADD_ENTRY  TO_LIST(#EMPSELECT) ENDSELECT   DISPLAY BROWSELIST(#EMPSELECT)  
[ Image Added |../../index.htm#lansa/continue_e.htm]