分散トランザクション処理機能 OpenTP1 プログラム作成リファレンス C言語編

[目次][索引][前へ][次へ]

タイマ起動メッセージ廃棄通知イベント(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のサービスグループがセキュア状態です。