タイマ起動引き継ぎ決定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 ;
説明
タイマ起動のアプリケーションプログラムの起動(CBLDCMCF('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
入力元の論理端末名称が設定されます。アプリケーションプログラムの起動
(CBLDCMCF('EXECAP '))がSPPから呼び出されている場合は, '*' が設定されます。
●ap_name
UAPがタイマ起動のアプリケーションプログラムの起動(CBLDCMCF('EXECAP '))に設定した,アプリケーション名が設定されます。
●exec_time
UAPがタイマ起動のアプリケーションプログラムの起動(CBLDCMCF('EXECAP '))に設定した,MHPを起動する時間が,1970年1月1日0時0分0秒からの通算秒で設定されます。
●ap_type
タイマ起動のアプリケーションプログラムの起動(CBLDCMCF('EXECAP '))を呼び出したUAPの,アプリケーションの型が設定されます。
'a':ans型
'n':noans型
●time_type
UAPがタイマ起動のアプリケーションプログラムの起動(CBLDCMCF('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作成上の注意事項