HP 3000 Manuals

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