2.2.3.5 CPMSetBindingsIn

The CPMSetBindingsIn message requests the binding of columns to a rowset. The protocol server replies to the CPMSetBindingsIn request message using the header section of the CPMSetBindingsIn message with the results of the request contained in the _status field. The format of the CPMSetBindingsIn message that follows the header is shown in the following diagram.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

_hCursor (optional)

_cbRow (optional)

_cbBindingDesc (optional)

_dummy (optional)

cColumns (optional)

aColumns (variable)

...

padding (variable)

...

_hCursor (4 bytes, optional): A 32-bit value representing the handle from the CPMCreateQueryOut message that identifies the search query for which to set bindings. This field MUST be present when the message is sent by the protocol client, and MUST NOT be present when the message is sent by the protocol server.

_cbRow (4 bytes, optional): A 32-bit unsigned integer indicating the size in bytes of a row. This field MUST be present when the message is sent by the protocol client, and MUST NOT be present when the message is sent by the protocol server.

_cbBindingDesc (4 bytes, optional): A 32-bit unsigned integer indicating the length in bytes of the fields following the _dummy field. This field MUST be present when the message is sent by the protocol client, and MUST NOT be present when the message is sent by the protocol server.

_dummy (4 bytes, optional): This field is unused, and MUST be ignored. It can be set to any arbitrary value. This field MUST be present when the message is sent by the protocol client, and MUST NOT be present when the message is sent by the protocol server.

cColumns (4 bytes, optional): A 32-bit unsigned integer indicating the number of elements in the aColumns array. This field MUST be present when the message is sent by the protocol client, and MUST NOT be present when the message is sent by the protocol server.

aColumns (variable): An array of the CTableColumn structures describing the columns of a row in the rowset. This field MUST be present when the message is sent by the protocol client, and MUST NOT be present when the message is sent by the protocol server. Structures in the array MUST be separated by zero to 3 padding bytes such that each structure has a 4-byte alignment from the beginning of a message. Padding bytes can be any arbitrary value, and MUST be ignored on receipt.

padding (variable): This field MUST be zero to 3 bytes long to pad the message to a multiple of 4 bytes in length. The value of the padding bytes can be any arbitrary value. This field MUST be ignored by the receiver. This field MUST be present when the message is sent by the protocol client, and MUST NOT be present when the message is sent by the protocol server.