タイマ起動メッセージ廃棄通知イベント(ERREVT4)の構造体形式

タイマ起動メッセージ廃棄通知イベント(ERREVT4)の先頭セグメントとして渡される,構造体の形式を次に示します。

この構造体はヘッダファイル<dcmcf.h>で定義されています。MCFイベント情報を処理するMHPでは,#includeで<dcmcf.h>をインクルードしてください。

ERREVT4以外のMCFイベント情報の形式は,マニュアル「OpenTP1 プロトコル」の該当するプロトコル編を参照してください。

MCFイベント情報の共通ヘッダ

struct  dc_mcf_evtheader {
    char  mcfevt_name[9] ;       …MCFイベントコード
    char  le_name[16] ;          …入力元論理端末名称
    char  cn_name[9] ;           …コネクション名
    unsigned  char  format_kind ;…MCFで使う領域
    char  reserve01 ;            …予備
    DCLONG  time ;                 …メッセージ入力時刻
} ;

ERREVT4の形式

struct  dc_mcf_evt4_type {
    struct  dc_mcf_evtheader evtheader ; …MCFイベント共通ヘッダ
    char  reserve01[12] ;                …予備
    char  reserve02[10] ;                …予備
    char  reserve03[2] ;                 …予備
    char  ap_name[10] ;                  …アプリケーション名
                                           (タイマ起動メッセージに
                                            対応する
                                            アプリケーション名)
    short reason_code ;                  … 理由コード
} ;

引数の内容

●le_name

メッセージを入力した論理端末名称が設定されます。次に示す場合には'*' が設定されます。

●cn_name

コネクション名が設定されます。次に示す場合には,'*'が設定されます。

●time

メッセージを入力した時刻が,1970年1月1日0時0分0秒からの通算の秒数で設定されます。

●ap_name

異常が起こったタイマ起動のdc_mcf_execap関数に設定したアプリケーション名が設定されます。

●reason_code

ERREVT4が通知された理由を示すコードが設定されます。理由コードの内容を次に示します。

C言語の理由コード(16進数)ERREVT4の通知理由
DCMCF_SCD_ERR(0020)RPC障害,サーバ未起動などが原因で,MHPの起動に失敗しました。
DCMCF_QUE_BUF_ERR(0030)メモリ不足のため,入力キューへの書き込みに失敗しました。
DCMCF_QUE_FIL_OVER(0031)キューファイルが満杯のため,入力キューへの書き込みに失敗しました。
DCMCF_QUE_LIMIT_OVER(0032)入力メッセージ最大格納数の定義指定値を超えたため,入力キューに書き込みませんでした。
DCMCF_QUE_IO_ERR(0033)入力キューへの書き込み時に障害が起こりました。
DCMCF_AP_CLOSE(0040)MHPのアプリケーションが閉塞中です。
DCMCF_AP_SECURE(0041)MHPのアプリケーションがセキュア状態です。
DCMCF_SERV_CLOSE(0042)MHPのサービスまたはサービスグループが閉塞中です。
DCMCF_SERV_SECURE(0043)MHPのサービスグループがセキュア状態です。