Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 プログラム作成リファレンス C言語編


タイマ起動引き継ぎ決定UOCの関数形式

タイマ起動引き継ぎ決定UOCは,次に示す形式で呼び出します。

〈このページの構成〉

形式

ANSI C,C++ の形式

#include <dcmpsv.h>
DCLONG  uoc_func(dcmpsv_uoc_rtime  *parm)

K&R版Cの形式

#include <dcmpsv.h>
DCLONG  uoc_func(parm)
 
dcmpsv_uoc_rtime    *parm ;

説明

タイマ起動のdc_mcf_execap関数を呼び出したあとで,障害が起こってOpenTP1を再開始(リラン)した場合に,タイマ起動の環境を変更するUOCです。このUOCを作成しておくと,次に示すことができます。

タイマ起動引き継ぎ決定UOCをMCFに組み込むときは,アプリケーション起動サービス用のMCFメイン関数に,UOC関数のアドレスを設定します。アプリケーション起動サービス用のMCFメイン関数は,通信プロトコルに依存しません。

アプリケーション起動サービス用のMCFメイン関数の作成方法については,マニュアル「OpenTP1 運用と操作」を参照してください。

uoc_func(タイマ起動引き継ぎ決定UOC)を呼び出すときには,parmには次に示すパラメタがMCFから設定されます。

パラメタの内容

dcmpsv_uoc_rtimeの内容

typedef  struct {
     char  le_name[9];   … 入力元論理端末名称
     char  reserve1[7];  … 予備
     char  ap_name[9];   … アプリケーション名
     char  reserve2[7];  … 予備
     DCLONG  exec_time;    … タイマ起動時刻
     char  ap_type;      … アプリケーションの型
                             'a':ans型  'n':noans型 
     char  time_type;    … タイマ起動の種別
                             'i':経過時間指定のタイマ起動
                             't':時刻指定のタイマ起動
     char  reserve3[26]; … 予備
} dcmpsv_uoc_rtime;

MCFからUOCへ値が渡される引数

●le_name

入力元の論理端末名称が設定されます。dc_mcf_execap関数をSPPから呼び出している場合は,'*' が設定されます。

●ap_name

UAPがタイマ起動のdc_mcf_execap関数に設定した,アプリケーション名が設定されます。

●exec_time

UAPがタイマ起動のdc_mcf_execap関数に設定した,MHPを起動する時間が,1970年1月1日0時0分0秒からの通算秒で設定されます。

●ap_type

タイマ起動のdc_mcf_execap関数を呼び出したUAPの,アプリケーションの型が設定されます。

'a':ans型

'n':noans型

●time_type

UAPがタイマ起動のdc_mcf_execap関数に設定した,タイマ起動の種別が設定されます。

'i':経過時間指定のタイマ起動

't':時刻指定のタイマ起動

UOCで値を設定する引数

●ap_name

タイマ起動で開始させるアプリケーション名を変更するときに,変更後のアプリケーション名を設定します。ここに指定した名称は,リターン値にDCMPSV_UOC_TIME_JUSTを設定したときに有効となります。

リターン値

uoc_func()は,次に示す値でリターンしてください。

リターン値

意味

DCMPSV_UOC_TIME_CONTINUE

タイマ起動を継続します。

DCMPSV_UOC_TIME_JUST

即時起動として起動します。

DCMPSV_UOC_TIME_DEQ

タイマ起動を取り消します。

uoc_func()からリターンした値によるMCFの処理を次に示します。

上記以外の値をUOCからリターンすると,タイマ起動するセグメントは出力キューから削除されて,警告メッセージ(KFCA10710-W)が出力されます。

UOC作成上の注意事項