TPGETLEV-check if a BEA TUXEDO system transaction is in progress
01TPTRXLEV-REC.
COPY TPTRXLEV.
01TPSTATUS-REC.
COPY TPSTATUS.
CALL "TPGETLEV" USINGTPTRXLEV-RECTPSTATUS-REC.
TPGETLEV returns to the caller the current transaction level. Currently, the only levels defined are TP-NOT-IN-TRAN and TP-IN-TRAN.
Upon successful completion, TPGETLEV sets TP-STATUS to [TPOK] and sets values in TPTRXLEV-REC to either a TP-NOT-IN-TRAN to indicate that no transaction is in progress, or TP-IN-TRAN to indicate that a transaction is in progress.
Under the following conditions, TPGETLEV fails and sets TP-STATUS to:
TPEPROTO]
TPGETLEV was called in an improper context.
TPESYSTEM]
TPEOS]
When using TPBEGIN(), TPCOMMIT() and TPABORT() to delineate a BEA TUXEDO system transaction, it is important to remember that only the work done by a resource manager that meets the XA interface (and is linked to the caller appropriately) has transactional properties. All other operations performed in a transaction are not affected by either TPCOMMIT() or TPABORT(). See buildserver(1) for details on linking resource managers that meet the XA interface into a server such that operations performed by that resource manager are part of a BEA TUXEDO system transaction.
TPABORT(), TPBEGIN(), TPCOMMIT(), TPSCMT()