ATMI COBOL Function Reference
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
TXROLLBACK()
- roll back a transaction
DATA DIVISION.
* Include TX definitions.
01TX-RETURN-STATUS
.
COPY TXSTATUS.
PROCEDURE DIVISION.
CALL "TXROLLBACK" USINGTX-RETURN-STATUS
.
TXROLLBACK()
is used to roll back the work of the transaction active in the caller's thread of control.
If the transaction_control
characteristic (see TXSETTRANCTL()
) is TX-UNCHAINED
, then when TXROLLBACK()
returns, the caller is no longer in transaction mode. However, if the transaction_control
characteristic is TX-CHAINED
, then when TXROLLBACK()
returns, the caller remains in transaction mode on behalf of a new transaction (see the RETURN VALUE
and ERRORS
sections below).
TX-RETURN-STATUS
is the record used to return a value.
Upon successful completion, TXROLLBACK()
returns TX-OK
, a non-negative return value.
Under the following conditions, TXROLLBACK()
fails and returns one of these negative values:
The current transaction rolled back; however, a new transaction could not be started and the caller is no longer in transaction mode. This return value may occur only when the transaction_control
characteristic is TX-CHAINED
.
The work done on behalf of the transaction was partially committed and partially rolled back. In addition, if the transaction_control
characteristic is TX-CHAINED
, a new transaction is started.
The work done on behalf of the transaction was partially committed and partially rolled back. In addition, a new transaction could not be started and the caller is no longer in transaction mode. This return value can occur only when the transaction_control
characteristic is TX-CHAINED
.
Due to a failure, some of the work done on behalf of the transaction may have been committed and some of it may have been rolled back. In addition, if the transaction_control
characteristic is TX-CHAINED
, a new transaction is started.
Due to a failure, some of the work done on behalf of the transaction may have been committed and some of it may have been rolled back. In addition, a new transaction could not be started and the caller is no longer in transaction mode. This return value can occur only when the transaction_control
characteristic is TX-CHAINED
.
The work done on behalf of the transaction was heuristically committed. In addition, if the transaction_control
characteristic is TX-CHAINED
, a new transaction is started.
The work done on behalf of the transaction was heuristically committed. In addition, a new transaction could not be started and the caller is no longer in transaction mode. This return value can occur only when the transaction_control
characteristic is TX-CHAINED
.
The function was called in an improper context (for example, the caller is not in transaction mode).
Either the transaction manager or one or more of the resource managers encountered a fatal error. The nature of the error is such that the transaction manager and/or one or more of the resource managers can no longer perform work on behalf of the application. The exact nature of the error is written to a log file. The caller's state with respect to the transaction is unknown.
![]() ![]() |
![]() |
![]() |