Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 プログラム作成の手引


3.10.6 送信障害通知イベント(SERREVT)

SERREVTは,メッセージを正常に送信したUAPが処理を終了したあとで,MCFが相手システムへメッセージを送信する途中で通信プロトコルの障害が起こった場合に通知されます。このイベントを参照すると,非同期型のメッセージの送信(dc_mcf_send関数,dc_mcf_reply関数)を使った場合でも,通信プロトコルの障害が起こったことがわかります。

SERREVTのMCFイベント処理用MHPは,非応答型(noans型)です。

イベントを入力キューに書き込む前にOpenTP1を終了した場合は,SERREVTは通知されません。

SERREVTの概要を次の図に示します。

図3‒29 SERREVTの概要

[図データ]

  1. dc_mcf_send関数,またはdc_mcf_reply関数に「イベントを通知する」ことを引数に設定して,メッセージを送信します。

  2. UAPは正常終了します。UAPからの送信要求を受け取ったMCFは,メッセージを相手システムへ送信します。

  3. 通信プロトコルの障害が起こりました。

  4. 制御がMCFに戻り,SERREVTが通知されて,MCFイベント処理用MHPがスケジュールされます。

  5. MCFイベント処理用MHPでは,SERREVTで通知された内容に合わせた処理をします。