Rational Developer for System z
Enterprise PL/I for z/OS, Version 3.8, プログラミング・ガイド

メッセージ・フィルター操作プロシージャーの作成

メッセージ・フィルター操作プロシージャーを使うと、メッセージを抑止したり、メッセージの重大度を変更したりすることができます。 どのメッセージの重大度も高くすることはできますが、 低くすることができるのは、ERROR (重大度コード 8) メッセージ または、WARNING (重大度コード 4) メッセージだけです。

プロシージャー特有の制御ブロックには、メッセージについての情報が含まれています。 これは、特定のメッセージの取り扱い方法を示す情報をコンパイラーに渡すために使われます。

プロシージャー特有のメッセージ・フィルター制御ブロックの例を次に示します。

Dcl 1 Uex_MFX native based( null() ),
      2 Uex_MFX_Length   fixed bin(31),

      2 Uex_MFX_Facility_Id  char(3),        /* of component writing
                                                message             */
      2 *                    char(1),
      2 Uex_MFX_Message_no   fixed bin(31),
      2 Uex_MFX_Severity     fixed bin(15),
      2 Uex_MFX_New_Severity fixed bin(15),  /* set by exit proc    */
      2 Uex_MFX_Inserts                fixed bin(15),
      2 Uex_MFX_Inserts_Data( 6 refer(Uex_MFX_Inserts) ),
        3 Uex_MFX_Ins_Type             fixed bin(7),
        3 Uex_MFX_Ins_Type_Data union unaligned,
          4 *                          char(8),
          4 Uex_MFX_Ins_Bin8           fixed bin(63),
          4 Uex_MFX_Ins_Bin            fixed bin(31),
          4 Uex_MFX_Ins_Str,
            5 Uex_MFX_Ins_Str_Len      fixed bin(15),
            5 Uex_MFX_Ins_Str_Addr     pointer,
          4 Uex_MFX_Ins_Series,
            5 Uex_MFX_Ins_Series_Sep   char(1),
            5 Uex_MFX_Ins_Series_Addr  pointer;

データ入力フィールド

メッセージ・フィルター操作プロシージャーの完了時に、戻りコード/理由コードを次のいずれかに設定してください。

0/0
コンパイルを続行し、メッセージを出力する
0/1
コンパイルを続行し、メッセージを出力しない
4/n
将来の利用のために予約済み
8/n
将来の利用のために予約済み
16/n
コンパイルを打ち切る

Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)