Page History
[ |../../index.htm#lansa/continue_e.htm]
現在地:
...
7.18.3 CONTINUE の使用例
BEGIN_LOOP ループ内で CONTINUE を使用する
| Anchor | ||||
|---|---|---|---|---|
|
この例は、BEGIN_LOOP ループ内で CONTINUE コマンドを使用する方法を示しています。
| Code Block |
|---|
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 | ||||
|---|---|---|---|---|
|
この例は、SELECT ループ内で CONTINUE コマンドを使用する方法を示しています。この例では、追加のユーザー・ファンクション・キーを使用して、選択したレコードを表示したり、必要に応じて削除したりできます。
| Code Block |
|---|
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) |
...