1.7.6 エラートランザクションインタフェース
TP1/FSP(全銀RC)としてのエラートランザクション定義要否と,エラートランザクションでのTP1/FSP(全銀RC)として必要な業務UAP処理を次の表に示します。
|
項番 |
エラートランザクション種別 |
名称 |
発生原因 |
定義要否 |
エラートランザクションでTP1/FSP(全銀RC)として必要な業務UAP処理 |
|---|---|---|---|---|---|
|
1 |
不正サービス名検出通知 |
ERRTRN1 |
受信したメッセージに設定されたサービス名は定義されていません。 |
△ |
ユーザ任意です(定義不正)。 |
|
2 |
サービス閉塞通知 |
ERRTRN2 |
サービス閉塞中のためトランザクションを起動できません。 |
△ |
ユーザ任意です。 業務エラートランザクションスレッドでイベント通知を受信した際には論理端末を閉塞し障害の要因を取り除いてください。 |
|
3 |
UAP異常終了通知 |
ERRTRN3 |
UAPが,メッセージを受信したあとに異常終了しました。 |
ユーザ任意です。 業務エラートランザクションスレッドでイベント通知を受信した際には論理端末を閉塞し障害の要因を取り除いてください。 eemcpcn定義-zオプションrspmodeオペランドにmanualを指定した場合は,送達管理メッセージ送信フラグを参照し,必要ならば送達管理電文送信関数を呼び出してください。ERRTRN3を終了時に送達管理メッセージが未送信の場合は,当該コネクションを解放します。 |
|
|
4 |
タイマトランザクション起動破棄通知 |
ERRTRN4 |
システム終了,または該当サービスが閉塞中のため,タイマトランザクションの起動を破棄しました。 |
△ |
ユーザ任意です。 |
|
5 |
コミット決着失敗通知 |
ERRTRNR |
UAPリターン後のトランザクション同期点処理で,コミット決着できませんでした。 |
△ |
ユーザ任意です。 |
|
6 |
送信障害通知 |
ERRTRNS |
メッセージを送信する途中で通信プロトコル障害が発生しました。 |
○ |
定義必須です(TP1/FSP(全銀RC)定義)。 業務UAPサービスでERRTRNSを受け取った場合は,ERRTRNS通知関数でTP1/FSPに通知してください。TP1/FSPでタイマキャンセル処理を実施します。 ERRTRNSの情報からエラー原因を調査し対策してください。 |
- (凡例)
-
○:定義必須です
△:定義有無はユーザ任意です
- 〈この項の構成〉
(1) C言語インタフェース
マニュアル「OpenTP1 Version 7 分散トランザクション処理機能 TP1/Server Base Enterprise Option プログラム作成の手引」との差分についてだけ説明します(下線付き太字は既存との差異を示します)。
- 形式
#include <eerpcsrv.h> #include <eezrc.h> void 関数名(char *in, EEULONG *in_len, char *out, EEULONG *out_len, EERPC_INTERFACE_TBL *trninf) { サービスの処理 } EERPC_INTERFACE_TBL構造体の形式を示します。 <64ビット> EERPC_INTERFACE_TBL { : EEULONG abn_thread_no; EEULONG trnlevel_len; union { TRNINF_SERVICE_EX *trninf_service_ex; TRNINF_DBQ_EX*trninf_dbq_ex; TRNINF_DBQ_OBS_EX * trninf_dbq_obs_ex; TRNINF_OBM_EX * trninf_obm_ex; TRNINF_TIM_EX * trninf_tim_ex; void * trninf_zrc_ex; } ex_inf; void *xtc_pt; void *mcp_pt; : }- サービス関数に渡される引数情報
-
トランザクション種別が「E3」,「ER」でかつ,メッセージ種別(msg_type)がEERPC_MSGTYPE_ZRCの場合の,引数の参照可否を次の表に示します。
表1‒77 引数の参照可否 項番
引数
トランザクション種別
E3
ER
1
入力パラメタ
×
×
2
入力パラメタ長
×
×
3
サービス関数の応答
×
×
4
応答の長さ
×
×
5
トランザクションインタフェース情報
○
○
- (凡例)
-
○:参照できます。
×:参照できません。
E3:ERRTRN3
ER:ERRTRNR
TP1/EEから値が渡される引数
- trninf
-
トランザクションインタフェース情報が渡されます。本情報は,参照だけ可能です。
内容については,「1.7.7 トランザクションインタフェース情報」を参照してください。
(2) COBOL言語インタフェース
マニュアル「OpenTP1 Version 7 分散トランザクション処理機能 TP1/Server Base Enterprise Option プログラム作成の手引」との差分についてだけ説明します。
- 形式
-
形式に変更はありません。
- サービス関数の引数情報
-
「1.7.6(1) C言語インタフェース」の「サービス関数に渡される引数情報」を参照してください。