MCFイベント情報は構造体で,MCFイベント処理用MHPに渡されます。MHPに渡される構造体の形式は,MCFイベントの種類によって異なります。ただし,MCFイベント情報の先頭部分(ヘッダ)の形式は,各イベントに共通です。
エラーイベント(ERREVTn)で使用する構造体は,<dcmcf.h>で定義してあります。なお,dc_mcf_evtheaderは,<dcmcf.h>で定義されています。<dcmotm.h>の前に<dcmcf.h>を取り込んでおいてください。
struct dc_mcf_evtheader {
char mcfevt_name[9] ; … MCFイベントコード
char le_name[16] ; … 入力元論理端末名称
(ERREVT1,ERREVT2,ERREVT3,CERREVT,
COPNEVTおよびCCLSEVTの場合)
出力先論理端末名称
(ERREVTAの場合)
char cn_name[9] ; … コネクション名
unsigned char format_kind; … MCF使用領域
char reserve01[1] ; … 予備
DCLONG time ; … メッセージ入力時刻
};
struct dc_mcf_evt1_type {
struct dc_mcf_evtheader evtheader ;
… MCFイベント共通ヘッダ
char reserve01[12] ; … 予備
char reserve02[10] ; … 予備
char reserve03[2] ; … 予備
char ap_name[10] ; … アプリケーション名
(メッセージに対応する
アプリケーション名)
char reserve04[2] ; … 予備
};
struct dc_mcf_evt2_type {
struct dc_mcf_evtheader evtheader ;
… MCFイベント共通ヘッダ
char reserve01[12] ; … 予備
char reserve02[10] ; … 予備
char reserve03[2] ; … 予備
char ap_name[10] ; … アプリケーション名
(メッセージに対応する
アプリケーション名)
short reason_code ; … 理由コード
};
struct dc_mcf_evt3_type {
struct dc_mcf_evtheader evtheader ;
… MCFイベント共通ヘッダ
char reserve01[12] ; … 予備
char map_name[10] ; … MCF使用領域
char reserve03[2] ; … 予備
char ap_name[10] ; … アプリケーション名
(異常が発生したメッセージ
のアプリケーション名)
char reserve04[2] ; … 予備
char service_name[32] ; … サービス名
char serv_grp_name[32] ; … サービスグループ名
char bid[36] ; … トランザクションブランチ
ID領域
} ;
struct dc_mcf_evta_type {
struct dc_mcf_evtheader evtheader ;
… MCFイベント共通ヘッダ
char reserve01[12] ; … 予備
char map_name[10] ; … MCF使用領域
char reserve03[2] ; … 予備
char ap_name[10] ; … アプリケーション名
(正常終了したメッセージ
のアプリケーション名)
char reserve04[2] ; … 予備
char reserve05[32] ; … 予備
char reserve06[32] ; … 予備
DCLONG user_leng ; … 他プロトコルの場合の使用領域
char user_data[16] ; … 他プロトコルの場合の使用領域
char reserve07[16] ; … 予備
} ;
typedef struct {
struct dc_mcf_evtheader header ;
… MCFイベント共通ヘッダ
DCLONG err_fact ; … 障害要因コード(4バイト)
DCLONG err_reason1 ; … 理由コード1(4バイト)
DCLONG err_reason2 ; … 理由コード2(4バイト)
DCLONG err_rcv_action; … 回復動作情報
char group_name[16]; … コネクショングループ名
char reserve1[26]; … 予備
} dcmotm_cerrevt ;
typedef struct {
struct dc_mcf_evtheader header ;
… MCFイベント共通ヘッダ
DCLONG cls_rcv_action; … 回復動作情報
(CCLSEVTの場合だけ有効)
char reserve1[12]; … 予備
char group_name[16]; … コネクショングループ名
char reserve2[26]; … 予備
} dcmotm_statevt ;