7.3.2 BEGIN_LOOPの使用例

LANSA

7.3.2 BEGIN_LOOPの使用例


例1:BEGIN_LOOP/END_LOOPコマンドを使用して、ユーザーが[終了]または[メニュー]ファンクション・キーを押すまで、ファイルにレコードを挿入し続けます。

GROUP_BY   NAME(#CUSTOMER) FIELDS(#CUSTNO #NAME #ADDL1 #ADDL2 #ADDL3)
BEGIN_LOOP
REQUEST    FIELDS(#CUSTOMER) EXIT_KEY(*YES *EXIT)  MENU_KEY(*YES *MENU)
INSERT     FIELDS(#CUSTOMER) TO_FILE(CUSMST)  VAL_ERROR(*LASTDIS)
CHANGE     FIELD(#CUSTOMER) TO(*DEFAULT)
END_LOOP
 

例2:BEGIN_LOOP/END_LOOPコマンドを使用して、#LISTという作業リストの項目を1〜10まで参照します。

BEGIN_LOOP USING(#I) FROM(1) TO(10)
GET_ENTRY  NUMBER(#I) FROM_LIST(#LIST)
END_LOOP
 

例3:BEGIN_LOOP/END_LOOPコマンドを使用して、#LISTという作業リストの項目を10〜1まで(すなわち逆の順序で)参照します。

BEGIN_LOOP USING(#I) FROM(10) TO(1) STEP(-1)
GET_ENTRY  NUMBER(#I) FROM_LIST(#LIST)
END_LOOP
 

例4:BEGIN_LOOP/END_LOOPコマンドを使用して、#LISTFという作業リストの項目1〜100のうち、偶数番号の項目を参照します。

BEGIN_LOOP USING(#I) FROM(2) TO(100) STEP(2)
GET_ENTRY  NUMBER(#I) FROM_LIST(#LIST)
END_LOOP
 

例5:BEGIN_LOOP/END_LOOPコマンドを使用して、#LISTという作業リストの項目1〜100のうち、奇数番号の項目を参照します。

BEGIN_LOOP USING(#I) FROM(1) TO(99) STEP(2)
GET_ENTRY  NUMBER(#I) FROM_LIST(#LIST)
END_LOOP