TMF Application Programmer's Guide (G06.24+)

TMF ARLIB2 Audit-Reading Procedures
HP NonStop TMF Application Programmer’s Guide—522419-004
5-53
ARFETCHMXBEFOREDATA2
image-buffer output
FIXED .EXT:ref
points to a caller-allocated buffer where the image data is returned. The
information is returned in a fixed format defined by SQL/MX with room for all the
columns, regardless of how many are requested. VARCHAR columns have their
maximum lengths allocated. The performance of this procedure is improved if this
buffer starts on a mod 8 address, and is mod 8 in length.
image-buffer-length input
INT(32):value
specifies the length in bytes of the caller-allocated image buffer. The performance
of this procedure is improved if this length is mod 8.
If this length is not large enough to contain the data for all the columns in the
record (plus fillers, as indicated by the information returned by the
ARGETMXCOLUMNINFO procedure), an ARE-BUFFER-TOO-SMALL error is
returned and the needed length is returned in reply hint.
end-image-dataoffset output
INT(32) .EXT:ref
specifies the offset in the image buffer of the byte after the end of the last column
(highest column number) for which image data is being returned by this call.
reply-hint output
INT(32) .EXT:ref
is a hint returned by TMFARLB2.
If the return code is AR-OK, this parameter contains the highest column number for
which image data is being returned.
If the return code is ARE-BUFFER-TOO-SMALL, this parameter contains the
minimum length necessary for the image-buffer in bytes (adjusted to mod 8).
For all other return-code values this parameter contains zero.
Note. The data within the image buffer returned by ARFETCHMXBEFOREDATA2 is not
aligned on any boundary. You must use a string move to move numeric values from the
image buffer to an aligned numeric field before processing the value. The same is true for
NULL indicator fields and VARCHAR character length fields, and their length fields.