bea ホーム | 製品 | dev2dev | support | askBEA |
![]() |
![]() |
|
![]() |
e-docs > Tuxedo > Tuxedo COBOL リファレンス > セクション 3(cbl) - COBOL 関数 |
Tuxedo COBOL リファレンス
|
名前
TPABORT()−現在の BEA Tuxedo ATMI のトランザクションのアボート
形式
01 TPTRXDEF-REC.
COPY TPTRXDEF.
01 TPSTATUS-REC.
COPY TPSTATUS.
CALL "TPABORT" USING TPTRXDEF-REC TPSTATUS-REC.
機能説明
TPABORT() は、トランザクションの中途終了を指定します。この関数が終了すると、そのトランザクションでなされたリソースへの変更内容はすべて取り消されます。TPCOMMIT(3) と同様、このルーチンはトランザクションの実行元しか呼び出せません。パーティシパント (サービス・ルーチン) は、トランザクションをアボートさせたい場合、TPFAIL() を設定して TPRETURN() を呼び出します。
未処理の応答に対する通信ハンドルが存在するときに TPABORT() を呼び出すと、このルーチンの終了時にトランザクションはアボートし、呼び出し元のトランザクションに関連する通信ハンドルは以後無効になります。呼び出し元のトランザクションと無関係の通信ハンドルは有効なままです。
トランザクション・モードの会話サーバに対してオープン接続がある場合、TPABORT() は TPEV-DISCONIMM イベントをサーバに送ります (そのサーバが接続の制御権を有するかどうかに関係なく)。TPBEGIN() の前に、あるいは TPNOTRAN 設定を付けて (つまり、トランザクション・モードにない状態で) オープンした接続は、影響を受けません。
現時点では、TPABORT() の引数 TPTRXDEF-REC は将来使用するために予約されています。
戻り値
TPABORT() は正常終了時には、TP-STATUS に [TPOK] を設定します。
エラー
次の条件が発生すると、TPABORT() は異常終了し、TP-STATUS に次の値を設定します。
注意事項
TPBEGIN()、TPCOMMIT() および TPABORT() を使用して BEA Tuxedo ATMI のトランザクションを記述する際には、XA インターフェイスに準拠した (および呼び出し元に適切にリンクされている) リソース・マネージャの行う作業がトランザクションとしての特性を備えていることを忘れないようにすることが重要です。トランザクションで行われるその他の処理内容は、TPCOMMIT() や TPABORT の影響を受けません。
関連項目
TPBEGIN(3cbl)、TPCOMMIT(3cbl)、TPGETLEV(3cbl)
![]() |
![]() |
![]() |
![]() |
||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |