4.1.7 送信メッセージの通番編集

<この項の構成>
(1) 送信メッセージの通番編集
(2) OpenTP1への組み込み方法

(1) 送信メッセージの通番編集

送信メッセージの通番編集UOCは,受け取った通番を基に,ユーザ独自の処理をするためのUOCです。例えば,通番を使用して送信メッセージを編集できます。

送信メッセージの通番編集を起動する場合,メッセージ送信の関数で,出力通番が必要であることを設定してください。UOCは,UAPが先頭セグメントを送信する関数を発行したときに,MCFによって起動されます。したがって,このUOCでメッセージを編集する場合,先頭セグメントしか編集できません。

(2) OpenTP1への組み込み方法

UAPのメイン関数の中に,UOCの関数アドレスを登録しておきます。UAPのメイン関数に登録するdc_mcf_regster関数の形式を次に示します。

(a) 形式
ANSI C,C++の場合

#include <dcmcf.h>
int dc_mcf_regster(DCLONG flags,
                 DCLONG  (*uoc_addr)
                 (DCLONG flags,
                 char    *termname,
                 DCLONG  sendno,
                 DCLONG  sendid,
                 DCLONG  dataleng,
                 char    *senddata))

K&R版 Cの場合

#include <dcmcf.h>
int dc_mcf_regster(flags,uoc_addr)
DCLONG flags;
DCLONG (*uoc_addr)();

(b) ユーザが値を設定する引数
(c) リターン値
リターン値意味
DC_OK正常に終了しました。
DCMCFER_INVALID_ARGS引数の指定が間違っています。
DCMCFER_NOMEMローカルメモリが不足しています。
(d) メイン関数への登録例