さて、パネル・グループの作成もこれから佳境に入ってきて、次に CLP によるサブ・ファイル型の照会画面の例を示す。
CLP でもファイルは扱うことはできるが CLPが扱うことができるのは 1つのファイルだけである。
DSPF もファイルであるので通常では CLP だけでファイルを読んで DSPF に表示することはできない。
ところが PNLGRP であれば、これが可能となる。
SFL型に相当する部分だけをサンプルとして紹介する。
次はPANEL-WORKER によって生成されたSFL型のPNLGRPの抜粋である。
【 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 によって項目の表示順序を定義している。
