さて、パネル・グループの作成もこれから佳境に入ってきて、次に CLP によるサブ・ファイル型の照会画面の例を示す。
CLP でもファイルは扱うことはできるが CLPが扱うことができるのは 1つのファイルだけである。
DSPF もファイルであるので通常では CLP だけでファイルを読んで DSPF に表示することはできない。
ところが PNLGRP であれば、これが可能となる。
SFL型に相当する部分だけをサンプルとして紹介する。
次はPANEL-WORKER によって生成されたSFL型のPNLGRPの抜粋である。
0101.00 .* ------------------------- 0102.00 .* リストの定義 0103.00 .* ------------------------- 0104.00 :LISTDEF NAME=SFL 0105.00 .* STRSFLVARS : DO NOT REMOVE THIS LINE 0106.00 .* ENDSFLVARS : DO NOT REMOVE THIS LINE 0107.00 VARS='CHGVAR BDYHND LSTHND NO BKBKCD BKNMKJ BKKBN RECRRN' 0108.00 CHGVAR=CHGVAR 0109.00 MSGID=PNL0001 0110.00 MSGF='PANELWKR/PNLMSG'. : : : 0300.00 .* ------------------------ 0301.00 .* DSPTOP : 明細画面 0302.00 .* ------------------------ 0303.00 :PANEL NAME=SFLDSP 0304.00 HELP='DSPTOPH' 0305.00 KEYL=DSPKEYL 0306.00 PANELID=PNLNAM 0307.00 ENTER='RETURN 27' 0308.00 CSRVAR=CSRVAR 0309.00 CSRPOS=CSRPOS 0310.00 CSRLST=CSRLST 0311.00 CSREID=CSREID 0312.00 CSRNAME=CSRNAME 0313.00 TOPSEP=NONE. 0314.00 銀行マスター照会 0315.00 :DATA DEPTH=1 0316.00 HELP='DSPTOPH' 0317.00 BOTSEP=NONE. 0318.00 :DATACOL WIDTH=58. 0319.00 :DATACOL WIDTH='*'. 0320.00 :DATAI VAR=MODE 0321.00 USAGE=OUT. 0322.00 :DATAIX VAR=DSPMOD 0323.00 ALIGN=RIGHT 0324.00 NEWLINE=NO 0325.00 USAGE=OUT. 0326.00 :EDATA. 0327.00 .* キー項目の表示 0328.00 :DATA DEPTH=01 0329.00 SCROLL=NO 0330.00 LAYOUT=1 0331.00 BOTSEP=NONE 0332.00 COMPACT. 0333.00 :DATACOL WIDTH=14. 0334.00 :DATACOL WIDTH='*'. 0335.00 .* 0336.00 :DATAGRP GRPSEP=NONE 0337.00 COMPACT. 0338.00 .* STRKEYDATAI : DO NOT REMOVE THIS LINE 0339.00 .* ENDKEYDATAI : DO NOT REMOVE THIS LINE 0340.00 :EDATAGRP. 0341.00 :EDATA. 0342.00 .* データ項目の表示 0343.00 :DATA DEPTH=1 0344.00 SCROLL=NO 0345.00 LAYOUT=2 0346.00 BOTSEP=SPACE. 0347.00 :DATACOL WIDTH=14. 0348.00 :DATACOL WIDTH='*'. 0349.00 .* 0350.00 :DATAGRP GRPSEP=NONE 0351.00 COMPACT. 0352.00 .* STRDTADATAI : DO NOT REMOVE THIS LINE 0353.00 .* ENDDTADATAI : DO NOT REMOVE THIS LINE 0354.00 :EDATAGRP. 0355.00 :EDATA. 0356.00 .* ------------------------ 0357.00 .* リスト域の定義 0358.00 .* ------------------------ 0359.00 :LIST DEPTH='*' 0360.00 LISTDEF=SFL 0361.00 MAXHEAD=3 0362.00 VIEW=VIEW 0363.00 BOTSEP=SPACE. 0364.00 .* STRLISTCOL : DO NOT REMOVE THIS LINE 0365.00 :LISTCOL VAR=NO 0366.00 USAGE=OUT 0367.00 HELP=NOH 0368.00 MAXWIDTH=4. 0369.00 0370.00 :LISTCOL VAR=BKBKCD 0371.00 MAXWIDTH=0012 0372.00 HELP=BKBKCDH 0373.00 USAGE=OUT. 0374.00 銀行コード 0375.00 :LISTCOL VAR=BKNMKJ 0376.00 MAXWIDTH=0014 0377.00 HELP=BKNMKJH 0378.00 USAGE=OUT. 0379.00 銀行名 0380.00 :LISTCOL VAR=BKKBN 0381.00 MAXWIDTH=0006 0382.00 HELP=BKKBNH 0383.00 USAGE=OUT. 0384.00 区分 0385.00 .* ENDLISTCOL : DO NOT REMOVE THIS LINE 0386.00 :LISTVIEW LAYOUT=1 0387.00 .* STRCOLS : DO NOT REMOVE THIS LINE 0388.00 COLS='NO' 0389.00 COLS='BKBKCD' 0390.00 COLS='BKNMKJ' 0391.00 COLS='BKKBN'. 0392.00 .* ENDCOLS : DO NOT REMOVE THIS LINE 0393.00 :ELIST. 0394.00 .* STRBOTINSERT : DO NOT REMOVE THIS LINE 0395.00 .* ENDBOTINSERT : DO NOT REMOVE THIS LINE 0396.00 :EPANEL. 0397.00 .* ENDPNL OF DSPTOP
リストを
:LISTDEF NAME=SFL VARS='CHGVAR BDYHND LSTHND NO BKBKCD BKNMKJ BKKBN RECRRN' CHGVAR=CHGVAR MSGID=PNL0001 MSGF='PANELWKR/PNLMSG'.
で定義している。VARS= でリストの項目を定義する。
表示パネルの中では DATA タグの代わりに LIST タグを使って定義する。
:LISTVIEW LAYOUT=1 COLS='NO' COLS='BKBKCD' COLS='BKNMKJ' COLS='BKKBN'.
の COLS によって項目の表示順序を定義している。