Hitachi

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


5.1.1 UOCのコーディング

UOCのコーディングには,C言語またはCOBOL言語を使用します。

UOCをコーディングしてソースファイルを作成するとき,次の表に示すTP1/EEライブラリ関数のほかにも,OSの標準機能を使えます。反映UOCでは,データベース言語(SQL)も使うことができます。

UOCでは,次に示すTP1/EEのライブラリ関数を使用できます。

表5‒1 使用可能なTP1/EEライブラリ関数

項番

機能

C言語ライブラリ

COBOL-UAP作成用プログラム

UOC

備考

開始

終了

反映先指定

編集

反映

1

ユーザメッセージログ出力

ee_logprint_user

CBLEELOG('PRINTU ')

2

メッセージの出力抑止

ee_log_dctmsg

CBLEELOG('DCTMSG ')

3

メッセージの出力抑止解除

ee_log_actmsg

CBLEELOG('ACTMSG ')

4

トランザクション処理時間監視

ee_trn_watch

CBLEETRN('WATCH ')

×

×

×

説明中のtrn_expiration_time定義はtrnrks_service定義の-eオプション値に読み替えてください。

5

トランザクション処理時間の残り時間取得

ee_trn_getrtime

CBLEETRN('GETRTIME')

×

×

×

項番4と同様です。

6

遠隔サービスの要求

ee_rpc_call

CBLEERPC('CALL ')

×

×

×

flags(COBOL:データ名C)を次のように設定してください。必須項目です。

  • EERPC_TPNOTRAN

    (COBOL:32)

次の指定はできません。

  • EERPC_CALL_MYPROC

    (COBOL:131072)

7

通信先を指定した遠隔サービスの要求

ee_rpc_call_to

CBLEERPC('CALLTO ')

×

×

×

directionのflagsはEERPC_SCDPORTだけ指定可能です。それ以外は項番6と同様です。

8

サービスの応答待ち時間の更新

ee_rpc_set_watch_time

CBLEERPC('SETWATCH')

×

×

×

説明中のwatch_time定義はtrnrks_service定義の-wオプション値に読み替えてください。

9

サービスの応答待ち時間の参照

ee_rpc_get_watch_time

CBLEERPC('GETWATCH')

×

×

×

項番8と同様です。

10

非同期応答型RPCの応答受信

ee_rpc_poll_any_replies

CBLEERPC('POLLANYR')

×

×

×

項番8と同様です。

11

すべての非同期応答型RPCの応答受信拒否

ee_rpc_discard_further_replies

CBLEERPC('DISCARDF')

×

×

×

項番8と同様です。

12

特定の非同期応答型RPCの応答受信拒否

ee_rpc_discard_specific_reply

CBLEERPC('DISCARDS')

×

×

×

項番8と同様です。

13

エラーが発生した非同期応答型RPCの識別子取得

ee_rpc_get_error_descriptor

CBLEERPC('GETERDES')

×

×

×

項番8と同様です。

14

データ連携支援の強制終了

ee_bpp_term

CBLEEBPP('TERM')

リターン値(COBOL:データ名B)でEECOMER_CNDBPP(COBOL:00005)は返されません。

説明中のeebpprunコマンドはデータ連携支援プロセスに読み替えてください。

15

接続ハンドルの取得

ee_trn_gethandle

CBLEETRN('GETHNDL ')

×

×

16

上記以外

×

×

×

×

(凡例)

○:使用可能

×:使用不可

−:該当しません

上記以外の関数を使用した場合の動作は保証しないので注意してください。

なお,上記の関数仕様についてはマニュアル「OpenTP1 Version 7 分散トランザクション処理機能 TP1/Server Base Enterprise Option プログラム作成の手引」および「1. トランザクションインタフェース」を参照してください。

〈この項の構成〉

(1) C言語でコーディングする場合

C言語を使うときは,ANSI C形式に従ってコーディングします。

(2) COBOL言語でコーディングする場合

COBOL言語を使うときは,COBOL2002の形式でコーディングします。

(3) コーディング規約

コーディングするときは,マニュアル「OpenTP1 Version 7 分散トランザクション処理機能 TP1/Server Base Enterprise Option プログラム作成の手引」の該当する言語編のコーディング規約に従ってコーディングしてください。SQLのコーディングの規約については,該当するリファレンスマニュアルを参照してください。