TXINTRO
名称
COBOLデータ構造
機能
概要
COBOLでのTXインタフェースの各呼び出しの統合的な機能を示します。
各呼び出し処理は,次に示すような項目によって記述されています。
COBOLのTXインタフェースで使用されるデータ構造
二つのCOBOLのレコード:TX-RETURN-STATUSとTX-INFO-AREAは,一般的にTXの呼び出し処理で使われます。これらは,COPYステートメントの指定によって,WORKING-STORAGE SECTIONで定義されているものとします。
『以降に示す二つのCOBOLレコードは,$DCDIR/include/COBOL/ディレクトリに格納されています。UAPをコンパイルするときには,COPYファイルの存在場所としてこのディレクトリを指定する必要があります。コンパイル時の指定については,使用するCOBOL言語のマニュアルを参照してください。』
TX-RETURN-STATUS
この章で記述する各機能は,要求によって,パラメタとしてこのレコードを参照します。このレコードは呼び出しに対して値を返すために使われます。このレコードは次の形式で使われるものとします。『TX-RETURN-STATUSの値 TXSTATUS は,データ名を FILLER としてあるので,処理から正しく参照できません。TX-RETURN-STATUSをほかの名称で再定義して,処理からは再定義した名称で参照するようにしてください。詳細は,「6.4 X/Openに準拠したUAPのコーディング例」を参照してください。』
01 TX-RETURN-STATUS.
COPY TXSTATUS.
TXSTATUSは,符号付き整数で定義されて,COBOLのTEXT LIBRARYとして存在していて,ステータスの値は次に示す値をとります。
05 FILLER PIC S9(9) COMP-5.
88 TX-NOT-SUPPORTED VALUE 1.
* Normal execution
88 TX-OK VALUE 0.
* Normal execution
88 TX-OUTSIDE VALUE -1.
* Application is in an RM local transaction
88 TX-ROLLBACK VALUE -2.
* Transaction was rolled back
88 TX-MIXED VALUE -3.
* Transaction was partially committed and partially rolled back
88 TX-HAZARD VALUE -4.
* Transaction may have been partially committed and partially
* rolled back
88 TX-PROTOCOL-ERROR VALUE -5.
* Routine invoked in an inproper context
88 TX-ERROR VALUE -6.
* Transient error
88 TX-FAIL VALUE -7.
* Fatal error
88 TX-EINVAL VALUE -8.
* Invalid arguments were given
88 TX-COMMITTED VALUE -9.
* The transaction was heuristically committed
88 TX-NO-BEGIN VALUE -100.
* Transaction committed plus new transaction could not be
* started
88 TX-ROLLBACK-NO-BEGIN VALUE -102.
* Transaction rollback plus new transaction could not be
* started
88 TX-MIXED-NO-BEGIN VALUE -103.
* Mixed plus new transaction could not be started
88 TX-HAZARD-NO-BEGIN VALUE -104.
* Hazard plus new transaction could not be started
88 TX-COMMITTED-NO-BEGIN VALUE -109.
* Heuristically committed plus new transaction could not be started
TX-INFO-AREA
このレコードは,TXINFORMの呼び出しの結果が格納されるデータ構造を定義します。このレコードは,次の形式で使われるものとします。
01 TX-INFO-AREA.
COPY TXINFDEF.
TXINFDEFは,次に示すようなCOBOLのTEXT LIBRARYです。
* XID record
05 XID-REC.
10 FORMAT-ID PIC S9(9) COMP-5.
* A value of -1 in FORMAT-ID means that the XID is null
10 GTRID-LENGTH PIC S9(9) COMP-5.
10 BRANCH-LENGTH PIC S9(9) COMP-5.
10 XID-DATA PIC X(128).
* Transaction mode settings
05 TRANSACTION-MODE PIC S9(9) COMP-5.
88 TX-NOT-IN-TRAN VALUE 0.
88 TX-IN-TRAN VALUE 1.
* Commit-return settings
05 COMMIT-RETURN PIC S9(9) COMP-5.
88 TX-COMMIT-COMPLETED VALUE 0.
88 TX-COMMIT-DECISION-LOGGED VALUE 1.
* Transaction_control settings
05 TRANSACTION-CONTROL PIC S9(9) COMP-5.
88 TX-UNCHAINED VALUE 0.
88 TX-CHAINED VALUE 1.
* Transaction_timeout value
05 TRANSACTION-TIMEOUT PIC S9(9) COMP-5.
88 NO-TIMEOUT VALUE 0.
* Transaction_state information
05 TRANSACTION-STATE PIC S9(9) COMP-5.
88 TX-ACTIVE VALUE 0.
88 TX-TIMEOUT-ROLLBACK-ONLY VALUE 1.
88 TX-ROLLBACK-ONLY VALUE 2.