5.1.1 UOCのコーディング
UOCのコーディングには,C言語またはCOBOL言語を使用します。
UOCをコーディングしてソースファイルを作成するとき,次の表に示すTP1/EEライブラリ関数のほかにも,OSの標準機能を使えます。反映UOCでは,データベース言語(SQL)も使うことができます。
UOCでは,次に示す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)を次のように設定してください。必須項目です。
次の指定はできません。
|
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 |
上記以外 |
× |
× |
× |
× |
− |
(1) C言語でコーディングする場合
C言語を使うときは,ANSI C形式に従ってコーディングします。
(2) COBOL言語でコーディングする場合
COBOL言語を使うときは,COBOL2002の形式でコーディングします。
(3) コーディング規約
コーディングするときは,マニュアル「OpenTP1 Version 7 分散トランザクション処理機能 TP1/Server Base Enterprise Option プログラム作成の手引」の該当する言語編のコーディング規約に従ってコーディングしてください。SQLのコーディングの規約については,該当するリファレンスマニュアルを参照してください。