TXOPEN
形式
DATA DIVISION. * Include TX definitions. 01 TX-RETURN-STATUS. COPY TXSTATUS. PROCEDURE DIVISION. CALL "TXOPEN" USING TX-RETURN-STATUS.
機能
TXOPENは,互換性がある方法で,リソースマネジャの集合をオープンします。TXOPENでリソースをオープンすると,トランザクションマネジャがリソースマネジャ固有の情報をトランザクションマネジャ独自の方法で読み,この情報を,呼び出し元にリンクされているリソースマネジャに渡します。
TXOPENは,呼び出し元にリンクされているすべてのリソースマネジャをオープンしようとします。TXOPENは,リソースマネジャ固有のオープン呼び出しの代わりに発行され,アプリケーションプログラムからの互換性を阻害する呼び出しを不要にします。
リソースマネジャは,初期化セマンティクスがそれぞれ異なっています。そのため,特有のリソースマネジャをオープンするのに必要な情報は,それぞれのリソースマネジャから公開されてなければなりません。
TXOPENがTX-ERRORを返したら,リソースマネジャは一つもオープンされていません。TXOPENがTX-OKを返したら,一つ以上のリソースマネジャがオープンされています。アプリケーションからアクセスしたときにリソースマネジャがオープンしていないと,リソースマネジャ固有のエラーを返します。あるスレッドがグローバルトランザクションに参加する前には,TXOPENが成功してリターンしていなければなりません。
TXOPENが成功したあとでも,繰り返しTXOPENを(TXCLOSEを呼び出す前なら)呼び出せます。繰り返しTXOPENを呼び出しても正常にリターンしますが,トランザクションマネジャでは,リソースマネジャの再オープン処理は一切しません。
『データ領域』
『●TX-RETURN-STATUS
TXOPENの実行結果が返されます。』
リターン値
成功した場合,TXOPENはTX-OKを返します。これは,負ではないリターン値です。『0が返ります。』『TXOPENの呼び出し元に結合している一つ以上のリソースマネジャの集合はオープンされます。』
エラー
次のような場合,TXOPENはエラーリターンして,次のうちどれか一つの値を返します。これは,負のリターン値です。
- TX-ERROR
-
トランザクションマネジャ,または一つ以上のリソースマネジャで一時的なエラーが起こりました。リソースマネジャは一つもオープンできませんでした。
- TX-FAIL
-
トランザクションマネジャ,または一つ以上のリソースマネジャで,回復できないエラーが起こりました。トランザクションマネジャ,一つ以上のリソースマネジャのどちらか,またはその両方が,アプリケーションに代わって作業できないことがエラーの原因です。
または,実行環境がジャーナルファイルレスモードのため,トランザクションマネジャでエラーが起こりました。
参照
TXCLOSE
『OpenTP1で使う場合の注意事項』
-
『TXOPENでオープンできるのは,X/OpenのXAインタフェースに準拠しているリソースマネジャだけです。』
-
『TXOPENと,OpenTP1の CBLDCTRN は併用できません。』