MSGLMT

入出力オプションおよびサブケース情報エントリ 入出力オプションセクションの中でMSGLMTコマンドを使用すると、ERROR、WARNING、およびINFORMATIONのメッセージ出力を制限できます。また、WARNINGまたはINFORMATIONのメッセージのレベルを上げてERRORにすることもできます。

フォーマット

MSGLMT (type) = value

MSGLMT, type, value

MSGLMT, mode

MSGLMT (WARNING) = 1000
MSGLMT (101) = 50

定義

引数 オプション 説明
type <ERRORWARNINGID>

デフォルト値はありません。

ERROR
ERRORメッセージの許容合計数を指定した値に制限します。この制限に到達すると、実行は終了します。
WARNING
.outファイルにレポートされるWARNINGメッセージおよびINFORMATIONメッセージの合計数を指定した値に制限します。
ID
指定したIDのメッセージが.outファイルにレポートされる数を、指定した値に制限します。
value <INTEGEROFFNONEERRORABORT> 1 2
INTEGER
正の整数を指定した場合、制限数はその数に設定されます。
OFFまたはNONE
value = NONE”は“type = ID”の場合のみ可能です。 3
ERROR
typeIDの場合のみ有効です。
このIDのメッセージはERRORとして扱われます。つまり、ソルバーの実行時にこのメッセージが発生しない限り、現在のステージが終了しても次のステージに進むことはできません。ただし、終了前に結果を完全にポスト処理できます。最適化の実行は、繰り返し可能数に達した場合と同じように終了します。
ABORT
typeIDの場合のみ有効です。
このIDのメッセージはERRORとして扱われます。つまり、ソルバーは直ちに終了します。ソルバーの実行時にこのメッセージが発生した場合、出力ファイルは生成されません。入力データの読み出しまたは検証中にこのメッセージが発生した場合、入力の残り部分は処理されません。
mode <STRICTUNREFBRIEF>
STRICT
MSGLMTにより、全てのメッセージが出力されます。
UNREF
メッセージ 1931、1932 と 2010 は出力されません。
BRIEF(デフォルト)
メッセージ 741、742、1935、1931、1932、2010、1052、1305と1436 は出力されません。

コメント

  1. デフォルトでは、ほとんどの個々のERRORメッセージおよびWARNING/INFORMATIONメッセージの制限は10です。
  2. 合計数のデフォルトの制限は、ERRORメッセージでは10,000、WARNING/INFORMATIONメッセージでは1,000です。
  3. 以下の表はいくつかの特別なケースのMSGLMT使用法を示します:
    特別なケース 効果
    MSGLMT(Message ID/WARNING/ERROR) = 1 登録されカウントされた特定のメッセージの情報の連続発生を防ぎます。

    WARNING/ERRORが用いられた場合、最初のWARNING/ERRORのみが出力されます。

    MSGLMT(Message ID/WARNING/ERROR) = 0

    MSGLMT(Message ID/WARNING/ERROR) = OFF

    Message ID: 指定されたメッセージの全ての発生が表示されます。
    警告: 全てのワーニングが表示されます。

    ERROR: 全てのエラーが表示されます。

    MSGLMT (Message ID) = NONE 指定されたメッセージ (と、もしあれば同じメッセージ複数の発生) は出力ファイルに印刷されません。
    注:
    1. Message IDがエラーに属する場合、指定されたエラーと同じエラーの複数の発生は出力ファイルに印刷されません。しかしながら、これはエラーを止めた後のソルバーの継続を許すわけではありません。これは、時としてエラーが止められているために、出力ファイルに本来のエラーに関する情報無しにエラーが発生する状態となる事があります。
    2. 止められたERROR/WARNINGメッセージはなおそれぞれの制限までカウントされ、ジョブサマリーにレポートされます。
    3. MSGLMT(Message ID)=NONEのERRORメッセージに対する使用は推奨しません。
    MSGLMT (Message ID) = <Negative Integer> 負の値はサポートされていません。負の値が用いられた場合“Syntax error”が表示されます。
  4. MSGLMTOptiStructコンフィギュレーションファイルで設定できます。
  5. 複数のインスタンスのMSGLMTを記述できます。インスタンス間で競合が発生した場合は、最後のインスタンスが優先されます。
  6. あるメッセージはIDの出力リストが非情に長くなり得るため、MSGLMTで出力されるIDの数を制御することができます。
    例:
    MSGLMT, 1692, <Integer> or MSGLMT (1692) =<integer>
    重複したGRID IDの最初の<integer>の番号を出力。
    *** WARNING # 1692
    重複したGRIDカードを見つけ、同じデータの74アイテムを削除。
    10001      10002      ... (up to <integer> number)
    MSGLMT, 1692, OFF or MSGLMT (1692) =OFF
    重複したすべてのGRID IDを出力。
    *** WARNING # 1692

    重複したGRIDカードを見つけ、同じデータの86アイテムを削除。

    10001      10002      10003      10004      10005