Hitachi

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


3.6.3 メッセージの受信

他システムから送信されたメッセージを最終セグメントまで受信すると,MCFはアプリケーション名に該当するMHPにメッセージを渡します。MHPではメッセージをdc_mcf_receive関数【CBLDCMCF('RECEIVE ')】で受信して処理を開始します。このメッセージ受信を非同期型のメッセージ受信といいます。

dc_mcf_receive関数では,メッセージをセグメント単位で受信します。

メッセージが一つのセグメント(単一セグメント)から構成される場合は,dc_mcf_receive関数を1回だけ呼び出します。

メッセージが複数のセグメントから構成されるときは,dc_mcf_receive関数をセグメントの数だけ呼び出して受信します。MHPでは,メッセージを先頭セグメントから受信して,次に中間以降のセグメントを受信します。中間以降のセグメントを受信し続けると,受信するセグメントがないことを知らせるリターン値が返るので,最終セグメントまで受信し終わったことがわかります。

UOCを使うと,MHPにメッセージを渡す前にメッセージを編集したり,アプリケーション名を変更したりできます。

アプリケーション名

アプリケーション名は,メッセージの先頭から,空白の手前までの1から8バイトの英数字です。先頭から9バイト目までに空白がないとき,または先頭が空白のときは,間違ったアプリケーション名と見なします。

アプリケーション名は,入力メッセージ編集UOCで編集できます。

メッセージの受信を次の図に示します。

図3‒8 メッセージの受信

[図データ]