Set_Prepare_To_Receive_Type (CPI-C)
Set_Prepare_To_Receive_Type调用 (函数名称 cmsptr) 指定后续Prepare_To_Receive调用的执行方式。 它替代由 Initialize_Conversation 或 Accept_Conversation建立的默认准备接收处理。 默认情况下,准备接收处理基于会话的同步级别。
准备接收类型会影响所有后续 Prepare_To_Receive 调用。 可以通过重新发出 Set_Prepare_To_Receive_Type来更改它。
语法
CM_ENTRY Set_Prepare_To_Receive_Type(
unsigned char FAR *conversation_ID,
CM_INT32 FAR *prepare_to_receive_type,
CM_INT32 FAR *return_code
);
参数
conversation_ID
提供的参数。 指定会话的标识符。 此参数的值由 Initialize_Conversation 或 Accept_Conversation 返回。
prepare_to_receive_type
提供的参数。 指定后续 Prepare_To_Receive 调用的执行方式。 可能的值为:
CM_PREP_TO_RECEIVE_CONFIRM
用于向合作伙伴程序发送逻辑单元的发送缓冲区的内容, (LU) 和确认请求。 收到确认后,会话将更改为 RECEIVE 状态。
CM_PREP_TO_RECEIVE_FLUSH
用于向合作伙伴程序发送本地 LU 发送缓冲区的内容,并将会话更改为 RECEIVE 状态。
CM_PREP_TO_RECEIVE_SYNC_LEVEL
由会话同步级别用于确定准备接收处理。 默认同步级别由 Initialize_Conversation 建立,可由 Set_Sync_Level重写。
如果会话的同步级别为CM_NONE,则默认情况下,本地 LU 发送缓冲区的内容将发送到合作伙伴计划,并且会话将更改为 RECEIVE 状态。 如果会话的同步级别CM_CONFIRM,则本地 LU 发送缓冲区的内容和确认请求将发送到合作伙伴计划。 当合作伙伴计划发出 “已确认”(响应确认请求)时,对话将更改为 RECEIVE 状态。
return_code
此调用返回的代码。 本主题稍后将列出有效的返回代码。
返回代码
CM_OK
主返回代码;已成功执行的调用。
CM_PROGRAM_PARAMETER_CHECK
主返回代码;发生了以下情况之一:
prepare_to_receive_type 或 conversation_ID 指定的值无效。
prepare_to_receive_type 参数设置为 CM_PREP_TO_RECEIVE_CONFIRM,但会话同步级别设置为 CM_NONE。
CM_PRODUCT_SPECIFIC_ERROR
主返回代码;发生特定于产品的错误,并且已记录在产品错误日志中。
状态更改
会话可以处于除 RESET 以外的任何状态。
没有状态更改。