少し変わったエラー・メッセージの使用方法を紹介しよう。
開発者は毎度のように QCPFMSG
には見飽きているかも知れない。
ここでは逆に QCPFMSG
を利用するのである。
QCPFMSG
はほとんど OS400によって使用されているのであるが
同じような良く似たメッセージがあれば QCPFMSG
を利用するのである。
QCPFMSG
でなくても SEU
, DFU
, QUERY
など OS400には大量の
メッセージ・ファイルが保管されている。
しかもOS400リリースによってこれらの内容が変わることもないし
メッセージ・ファイルの管理の手間も削減することができる。
しかも OS400のメッセージ・ファイルは、言語に対応して用意されているので
同じメッセージ識別コードであっても英語環境で実行するときは
正しい英文として表示されるという便利なものである。
そこでコマンド入力行から
DSPMSGD RANGE(*FIRST *LAST) DETAIL(*BASIC) OUTPUT(*PRINT)
を実行すると QCPFMSG
の内容が印刷スプールに出力される。
このスプールは保存しておいて頂きたい。
スプールの中身を検索すれば自分が欲しい良く似たメッセージを探すことができる。
首尾良く適切なメッセージが見つかったら、そのメッセージ識別コードを利用すれば
よいのである。
例えば次の例を見て欲しい。
A* 61 : IMPOSSIBLE TO ROLLUP A 61 ERRMSGID(EDT0411 QPDA/QEDTMSG 61) A* 62 : IMPOSSIBLE TO ROLLDOWN A 62 ERRMSGID(EDT0410 QPDA/QEDTMSG 62)
DSPMSGD RANGE(EDT0411) MSGF(QPDA/QEDTMSG)
を実行してみると
EDT0411
は「すでにリストの最下部が表示されている 」と記述されている。
これはサブファイルがこれ以上ロールアップできないことをメッセージとして表示するものであるが、
これは SEU
で使用しているメッセージを借用したものである。
IBM から提供されているメッセージは事前に多くの慎重な検討がなされているはずであるから
ユーザーが借用するのに適している。
また QUERY/400 のテキストなどは、かなりメッセージ・ファイル化されている。
IBM のメッセージ・ファイルの使用を調査するとユーザーにも大いに参考になるはずである。