追加としてサブファイル独自の留意点をいくつか挙げておこう。
1. ERRMSG パラメータではなく SFLMSG を使う
エラーメッセージを表示するための ERRMSG
や ERRMSGID
の代わりに SFLMSG
または SFLMSGID
キーワードを使用する。
使用方法は ERRMSG
または ERRMSGID
と同じである。
SFLMSG
, SFLMSGID
は SFLCTL
レコードに定義する。
【 例 】
A 66 SFLMSG(' 商品 コード の誤り です' 66) A 61 SFLMSGID(EDT0411 QPDA/QEDTMSG 61) A 62 SFLMSGID(EDT0410 QPDA/QEDTMSG 62) A 67 SFLMSGID(CPD6A6D QSYS/QCPFMSG 67)
2. 特定のサブファイル・レコードを強制的に表示するには
SFLRCDNBR(CURSOR) キーワードを SFLCTL
に定義すると、そのレコードを含むページ
を強制的に表示してカーソルをレコードに位置づけることができる。
複数のページを持っているあるサブファイルで妥当性検査によって、例えば3ページ目に
含まれるレコードがエラー行になったとする。
操作員がエラー行を含むページをスクロールして探すのではなく、そのページを強制的に
表示させるようにするには SFLRCDNBR
によって実現することができる。
【 例 】
A DSPREC 4S 0H SFLRCDNBR(CURSOR)
3. カーソルが位置づけられていたフィールド名を検索するには
RTNCSRLOC
キーワードを使うとカーソルが位置づけられていたフィールド名とカーソルの
フィールド内での相対位置も検索することができる。
【 例 】
0095.00 A RTNCSRLOC(&RCD &FLD &CSRP) 0097.00 A RCD 10A H 0098.00 A FLD 10A H 0099.00 A CSRP 4S 0H
RCD | = | カーソルが位置づけられていたレコード名 |
FLD | = | カーソルが位置づけられていたフィールド名 |
CSRP | = | カーソルのフィールド内での相対位置 |