MPE/iX 5.0 Documentation
HP DeskManager Intrinsics
Detailed Transaction Record Formats
The First Sixteen Bytes of a Transaction Record
The first 16 bytes of a transaction record always take this format:
Bytes Data Type Contents
1 - 4 Integer Reserved for future use
5 - 8 Integer Transaction record type
9 - 12 Integer Result field
13 - Integer Reserved for future use
16
17 on Type and contents depend on
transaction record type
Bytes 1 to 4
This field should be set to 0.
Bytes 5 to 8
This field defines the type of information contained in the remainder of
the record.
Bytes 9 to 12
The Intrinsics return the result of the validation of a transaction
record into this field. 0 denotes no error, other values are described
in Appendix B : Error and Status Codes. Note that this field is only
updated if the validation was unsuccessful.
Every call to HPDUserSend and HPDGateSend has a status parameter which is
a 12 byte array. status [1] identifies that an error has occurred in the
Transaction File and the subsidiary status fields (status [3] and status
[4]) indicate the number of errors encountered in the file and the record
number (position in the file) of the first transaction record in error,
respectively. (The record number of the first record in the file is 0.)
If there is more than one error in the record, the status [4] field
reports the first found, reading from the beginning of the transaction
record.
If a transaction record references a file, the result field may contain a
file system error number if a file access error has occurred.
For transaction records generated by the Intrinsics, this field is always
set to 0.
Bytes 13 to 16
This field must be set to 0.
Bytes 17 Onwards
The format of the remainder of the transaction record depends on its
record type. Sometimes the remainder of the record is empty.
For example, the first 16 bytes of the Transaction File body type
identifier (tt_body_type is always the first record in the file) could
look like this:
The remainder of the record would not be empty as above.
MPE/iX 5.0 Documentation