Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

[ Image Added |../../index.htm#lansa/get_message.htm]
現在地:

Anchor
_Toc130907314
_Toc130907314
9.95 GET_MESSAGE

注意: 9.1 組み込み関数の規則      &<a href="bifcat2_03.htm"&>利用オプション&</a&>利用オプション
RDMLファンクションのプログラム待ち行列から、この次のメッセージの詳細を取得します。
通常、戻されたメッセージの詳細は、RDMLファンクションにより標準的ではない方法で処理または印刷されます。
通常、RDMLファンクションのプログラム待ち行列のメッセージは、ユーザーに次に表示される画面の22/24行目に表示され、その後自動的にクリア/削除されます。
メッセージは、オペレーティング・システム・コマンド、組み込み関数、無効なI/O要求および/またはMESSAGE、VALUECHECKなどのRDMLコマンドによってプログラム・メッセージ待ち行列に入れられている可能性があります。

...


バッチ・プログラムでNAMESファイルに新しい名前と住所を挿入します。エラーが発生した場合、例外レポートに名前や住所の詳細と共に関連のエラー・メッセージをすべて印刷します。
DEFINE     FIELD(#ERRTXT) TYPE(*CHAR) LENGTH(100)             LABEL('Error :') DEF_LINE   NAME(#NAME)  FIELDS(#CUSTNO #ADDRESS1                                 #ADDRESS2 #ZIPCODE) DEF_LINE   NAME(#ERROR) FIELDS(#ERRTXT) IDENTIFY(*LABEL) INSERT     FIELDS(#NAME) TO_FILE(NAMES) VAL_ERROR(*NEXT) IF_STATUS  IS_NOT(*OKAY)       PRINT      LINE(#NAME)       USE        BUILTIN(GET_MESSAGE) TO_GET(#RETCODE #ERRTXT)       DOWHILE    COND('#RETCODE = OK')            PRINT      LINE(#ERROR)            USE        BUILTIN(GET_MESSAGE)                        TO_GET(#RETCODE #ERRTXT)       ENDWHILE ENDIF
注:
同じプログラムをIBM iで実行した場合とLANSAスーパーサーバー・モードで実行した場合では異なるメッセージが作成されます。 IBM iでこのBIFを使用して取得したメッセージは以下のように表示されます。
Message text:      Record to be updated has been changed by another job/user Message number:    IOM0017 Message file name: DC@M01
(IBM iに対して) LANSAスーパーサーバー・モードで実行した場合は以下のように表示されます。
Message text:      Record to be updated has been changed by another job/user Message number:    *STCMSG Message file name: 2
これは設計検討事項ですが、技術的に複雑なため短期的には変更されることはありません。
[ Image Added |../../index.htm#lansa/get_message.htm]