サブルーチンの自動生成について
ASSGの対話型プログラムでは、「サブルーチンの自動生成」が可能です。
自動生成されるルーチンは下記の通りです。
MAIN:メインルーチン(画面遷移の制御部分のみ)
#INIT:初期処理(第一画面への画面遷移部分のみ)
#SCREEN_BACK:前画面遷移
#disp_record :画面入出力
#disp_record_INITFLD:フィールド初期化
#disp_record_INITATR:属性初期化
#disp_record_CHECK:入力チェック
#disp_record_SEARCH:検索
(disp_record:画面レコード名)
-----------------------------------------------------------------------------------
MAINルーチンはサブルーチンではありませんが、次のようなコードが生成されます。
(赤字は任意に設定可能、青字は自動生成)
//--------------------------------------------------------------------
// MAIN ROUTINE
//--------------------------------------------------------------------
//画面遷移初期化
WSTS = '0';
//画面処理
DOU WSTS = '99';
SELECT;
WHEN WSTS = '0';
EXSR #INIT;
WHEN WSTS = '1';
EXSR #DSP01;
WHEN WSTS = '2';
EXSR #DSP02;
WHEN WSTS = '3';
EXSR #DSP03;
ENDSL;
ENDDO;
EXSR #END;
DSP01→DSP02→DSP03と順に遷移するためのコードを生成します。
この遷移に乗らない画面、例えばメッセージ表示画面や組み込みの検索画面は、「自動生成しない」設定にできます。
その場合オウンコードでWRITE/EXFMTを書きます。
他のサブルーチン紹介は次回にします。