5.2.4 OpenTP1のトランザクション制御関数(dc_trn_~)との比較

<この項の構成>
(1) TX_関数とOpenTP1のトランザクション制御関数(dc_trn_~)との対応
(2) TX_関数の時間監視

(1) TX_関数とOpenTP1のトランザクション制御関数(dc_trn_~)との対応

OpenTP1のトランザクション制御関数(dc_trn~)とTX_関数の関係を次の表に示します。

表5-8 OpenTP1のトランザクション制御関数(dc_trn~)とTX_関数の関係

TX_関数名OpenTP1のトランザクション制御関数(dc_trn~)
tx_begin()dc_trn_begin関数
tx_close()対応関数なし
tx_commit()(TX_CHAINED指定)dc_trn_chained_commit関数
tx_commit()(TX_UNCHAINED指定)dc_trn_unchained_commit関数
tx_info()dc_trn_info関数
tx_open()対応関数なし
tx_rollback()(TX_CHAINED指定)dc_trn_chained_rollback関数
tx_rollback()(TX_UNCHAINED指定)dc_trn_unchained_rollback関数
tx_set_commit_return()対応関数なし
tx_set_transaction_control()対応関数なし
tx_set_transaction_timeout()対応関数なし

(2) TX_関数の時間監視

TX_関数では,トランザクションの経過時間をtx_set_transaction_timeout()で監視できます。この場合,システム定義のtrn_expiration_timeオペランドの値よりも,tx_set_transaction_timeout()で設定したtransaction_timeout特性が優先されます。

(a) 時間監視の範囲

tx_begin()から同期点(tx_commit(),tx_rollback())までの時間監視では,トランザクション内で呼び出したdc_rpc_call関数がリターンするまでの時間を含めるか含めないかを選択できます。トランザクションの監視時間の範囲は,ユーザサービス定義,ユーザサービスデフォルト定義,トランザクションサービス定義のtrn_expiration_time_suspendオペランドで指定できます。trn_expiration_time_suspendオペランドに指定する値とトランザクションの時間監視の詳細については,マニュアル「OpenTP1 システム定義」を参照してください。