3.2.4.1.5 Sending a CPMGetRowsIn Request
When the higher layer is about to receive rows data, it provides the protocol client with a valid cursor. The higher layer SHOULD do so when it has a valid cursor, and the bindings had been set with a CPMSetBindingsIn message.
When this request is received from the higher layer, the protocol client MUST do the following:
Determine what unsigned integer value to specify for the _cbReadBuffer field. To determine this value, the client SHOULD take the maximum value from the following:
One thousand times the value of the _cRowsToTransfer field, rounded up to the nearest 512-byte multiple.
The value of _cbRowWidth, rounded up to the nearest 512-byte multiple.
Take the higher of these two values, up to the 16-kilobytes limit.
In cases where a single row is larger than 16 kilobytes, the protocol server cannot return results to this query.
Specify a client base for variable-sized row data in the client address space in the _ulClientBase field<8>.
Set the value of _cbSeek, which acts as an offset for Rows start, to "0x0000000C".
Send a CPMGetRowsIn message to the protocol server.