In the following table, the follow-up state of a program that was previously in a particular state is indicated for the individual calls (depending on their result). An explanation of the abbreviations used in the table is then provided.
Call | Result | Follow-up state, if previously in state | ||||
Start | Reset | Init. | Send | Receive | ||
Initialize_Conversation | ok | psc | Init. | psc | psc | psc |
Initialize_Conversation | pc | psc | - | psc | psc | psc |
Initialize_Conversation | ps | psc | - | psc | psc | psc |
Allocate | ok | psc | psc | Send | psc | psc |
Allocate | ae | psc | psc | Reset | psc | psc |
Allocate | pc | psc | psc | - | psc | psc |
Allocate | pe | psc | psc | - | psc | psc |
Allocate | ps | psc | psc | - | psc | psc |
Deallocate | ok | psc | psc | Reset | Reset | Reset |
Deallocate | pc | psc | psc | - | - | - |
Deallocate | ps | psc | psc | - | - | - |
Deferred_Deallocate | - | - | - | - | - | - |
Extract_Client_Context | ok | psc | - | - | - | - |
Extract_Client_Context | pc | psc | - | - | - | - |
Extract_Client_Context | ps | psc | - | - | - | - |
Extract_Conversation_Encryption_Level | ok | psc | psc | - | - | - |
Extract_Conversation_Encryption_Level | pc | psc | psc | - | - | - |
Extract_Conversation_Encryption_Level | ps | psc | psc | - | - | - |
Extract_Conversation_State | ok | psc | psc | - | - | - |
Extract_Conversation_State | pc | psc | psc | - | - | - |
Extract_Conversation_State | ps | psc | psc | - | - | - |
Extract_Convertion | ok | psc | psc | - | psc | psc |
Extract_Convertion | pc | psc | psc | - | psc | psc |
Extract_Convertion | ps | psc | psc | - | psc | psc |
Extract_Cursor_Offset | ok | psc | -1 | - | - | - |
Extract_Cursor_Offset | pc | psc | - | - | - | - |
Extract_Cursor_Offset | ps | psc | - | - | - | - |
Extract_Max_Partner_Index | ok | - | - | - | - | - |
Extract_Max_Partner_Index | pc | - | - | - | - | - |
Extract_Max_Partner_Index | ps | - | - | - | - | - |
Extract_Partner_LU_Name | ok | - | - | - | - | - |
Extract_Partner_LU_Name | pc | - | - | - | - | - |
Extract_Partner_LU_Name | ps | - | - | - | - | - |
Extract_Partner_LU_Name_Ex | ok | - | - | - | - | - |
Extract_Partner_LU_Name_Ex | pc | - | - | - | - | - |
Extract_Partner_LU_Name_Ex | ps | - | - | - | - | - |
Extract_Secondary_Information | ok | - | - | - | - | - |
Extract_Secondary_Information | pc | - | - | - | - | - |
Extract_Secondary_Information | ps | - | - | - | - | - |
Extract_Secondary_Return_Code | ok | psc | psc | - | - | - |
Extract_Secondary_Return_Code | nr | psc | psc | - | - | - |
Extract_Secondary_Return_Code | pc | psc | psc | - | - | - |
Extract_Secondary_Return_Code | ps | psc | psc | - | - | - |
Extract_Shutdown_State | ok | psc | -1 | psc | - | - |
Extract_Shutdown_State | pc | psc | -1 | psc | - | - |
Extract_Shutdown_State | ps | psc | -1 | psc | - | - |
Extract_Shutdown_Time | ok | psc | -1 | psc | - | - |
Extract_Shutdown_Time | pc | psc | -1 | psc | - | - |
Extract_Shutdown_Time | ps | psc | -1 | psc | - | - |
Extract_Transaction_State | ok | psc | -1 | psc | - | - |
Extract_Transaction_State | pc | psc | -1 | psc | - | - |
Extract_Transaction_State | ps | psc | -1 | psc | - | - |
Prepare_To_Receive | ok | psc | psc | psc | Receive | - |
Prepare_To_Receive | da | psc | psc | psc | Reset | psc |
Prepare_To_Receive | pc | psc | psc | psc | - | psc |
Prepare_To_Receive | rf | psc | psc | psc | Reset | psc |
Receive / Receive_Mapped_Data | ok{dr,no} | psc | psc | psc | Receive | - |
Receive / Receive_Mapped_Data | ok{nd,se} | psc | psc | psc | - | Send |
Receive / Receive_Mapped_Data | ok{dr,se} | psc | psc | psc | - | Send |
Receive / Receive_Mapped_Data | ae | psc | psc | psc | Reset | Reset |
Receive / Receive_Mapped_Data | da | psc | psc | psc | Reset | Reset |
Receive / Receive_Mapped_Data | dn | psc | psc | psc | Reset | Reset |
Receive / Receive_Mapped_Data | rf | psc | psc | psc | Reset | Reset |
Receive / Receive_Mapped_Data | oi,un | psc | psc | psc | Receive | - |
Receive / Receive_Mapped_Data | pc | psc | psc | psc | - | - |
Receive / Receive_Mapped_Data | ps | psc | psc | psc | - | - |
Send_Data / Send_Mapped_Data | ok | psc | psc | psc | - | psc |
Send_Data / Send_Mapped_Data | ae | psc | psc | psc | Reset | psc |
Send_Data / Send_Mapped_Data | da | psc | psc | psc | Reset | psc |
Send_Data / Send_Mapped_Data | pc | psc | psc | psc | - | psc |
Send_Data / Send_Mapped_Data | rf | psc | psc | psc | Reset | psc |
Set_Allocate_Timer | ok | psc | psc | - | psc | psc |
Set_Allocate_Timer | pc | psc | psc | - | psc | psc |
Set_Allocate_Timer | ps | psc | psc | - | psc | psc |
Set_Client_Context | ok | psc | psc | psc | - | psc |
Set_Client_Context | pc | psc | psc | psc | - | psc |
Set_Client_Context | ps | psc | psc | psc | - | psc |
Set_Conversation_Encryption_Level | ok | psc | psc | - | psc | psc |
Set_Conversation_Encryption_Level | pc | psc | psc | - | psc | psc |
Set_Conversation_Encryption_Level | ps | psc | psc | - | psc | psc |
Set_Convertion | ok | psc | psc | - | psc | psc |
Set_Convertion | pc | psc | psc | - | psc | psc |
Set_Convertion | ps | psc | psc | - | psc | psc |
Set_Conversation_Security_Type | ok | psc | psc | - | psc | psc |
Set_Conversation_Security_Type | pc | psc | psc | - | psc | psc |
Set_Conversation_Security_Type | pn | psc | psc | - | psc | psc |
Set_Conversation_Security_New_Password | ok | psc | psc | - | psc | psc |
Set_Conversation_Security_New_Password | pc | psc | psc | - | psc | psc |
Set_Conversation_Security_Password | ok | psc | psc | - | psc | psc |
Set_Conversation_Security_Password | pc | psc | psc | - | psc | psc |
Set_Conversation_Security_User_ID | ok | psc | psc | - | psc | psc |
Set_Conversation_Security_User_ID | pc | psc | psc | - | psc | psc |
Set_Deallocate_Type | ok | psc | psc | - | - | - |
Set_Deallocate_Type | pc | psc | psc | - | - | - |
Set_Deallocate_Type | ps | psc | psc | - | - | - |
Set_Function_Key | ok | psc | psc | psc | - | - |
Set_Function_Key | pc | psc | psc | psc | - | - |
Set_Function_Key | ps | psc | psc | psc | - | - |
Set_Receive_Timer | ok | psc | psc | psc | - | - |
Set_Receive_Timer | pc | psc | psc | psc | - | - |
Set_Receive_Timer | ps | psc | psc | psc | - | - |
Set_Receive_Type | ok | - | - | - | - | - |
Set_Receive_Type | pc | - | - | - | - | - |
Set_Partner_Host_Name | ok | psc | psc | - | psc | psc |
Set_Partner_Host_Name | pc | psc | psc | - | psc | psc |
Set_Partner_Host_Name | ps | psc | psc | - | psc | psc |
Set_Partner_Index | ok | psc | psc | - | psc | psc |
Set_Partner_Index | pc | psc | psc | - | psc | psc |
Set_Partner_Index | ps | psc | psc | - | psc | psc |
Set_Partner_IP_Address | ok | psc | psc | - | psc | psc |
Set_Partner_IP_Address | pc | psc | psc | - | psc | psc |
Set_Partner_IP_Address | ps | psc | psc | - | psc | psc |
Set_Partner_LU_Name | ok | psc | psc | - | psc | psc |
Set_Partner_LU_Name | pc | psc | psc | - | psc | psc |
Set_Partner_LU_Name | ps | psc | psc | - | psc | psc |
Set_Partner_Port | ok | psc | psc | - | psc | psc |
Set_Partner_Port | pc | psc | psc | - | psc | psc |
Set_Partner_Port | ps | psc | psc | - | psc | psc |
Set_Partner_Tsel | ok | psc | psc | - | psc | psc |
Set_Partner_Tsel | pc | psc | psc | - | psc | psc |
Set_Partner_Tsel | ps | psc | psc | - | psc | psc |
Set_Partner_Tsel_Format | ok | psc | psc | - | psc | psc |
Set_Partner_Tsel_Format | pc | psc | psc | - | psc | psc |
Set_Partner_Tsel_Format | ps | psc | psc | - | psc | psc |
Set_Sync_Level | ok | psc | - | psc | psc | psc |
Set_Sync_Level | pc | psc | - | psc | psc | psc |
Set_Sync_Level | ps | psc | - | psc | psc | psc |
Set_TP_Name | ok | psc | psc | - | psc | psc |
Set_TP_Name | pc | psc | psc | - | psc | psc |
Specify_Local_Port | ok | psc | - | psc | psc | psc |
Specify_Local_Port | pc | psc | - | psc | psc | psc |
Specify_Local_Port | ps | psc | - | psc | psc | psc |
Specify_Local_Tsel | ok | psc | - | psc | psc | psc |
Specify_Local_Tsel | pc | psc | - | psc | psc | psc |
Specify_Local_Tsel | ps | psc | - | psc | psc | psc |
Specify_Local_Tsel_Format | ok | psc | - | psc | psc | psc |
Specify_Local_Tsel_Format | pc | psc | - | psc | psc | psc |
Specify_Local_Tsel_Format | ps | psc | - | psc | psc | psc |
Specify_Secondary_Return_Code | ok | psc | - | - | - | - |
Specify_Secondary_Return_Code | pc | psc | - | - | - | - |
Specify_Secondary_Return_Code | ps | psc | - | - | - | - |
Enable_UTM_UPIC | ok | Reset | psc | psc | psc | psc |
Enable_UTM_UPIC | pc | - | psc | psc | psc | psc |
Enable_UTM_UPIC | ps | - | psc | psc | psc | psc |
Disable_UTM_UPIC | ok | psc | Start | Start | Start | Start |
Disable_UTM_UPIC | pc | psc | - | - | - | - |
Disable_UTM_UPIC | ps | psc | - | - | - | - |
Table 19: State table for CPI-C calls
1Permitted only directly after a Receive() / Receive_Mapped_Data() call
Abbreviations for the state table:
Result | Return codes |
ae | CM_ALLOCATE_FAILURE_RETRY |
da | CM_DEALLOCATED_ABEND |
dn | CM_DEALLOCATED_NORMAL |
oi | CM_OPERATION_INCOMPLETE |
ok | CM_OK |
pe | CM_PARAMETER_ERROR |
pc | CM_PROGRAM_PARAMETER_CHECK |
pn | CM_PARAM_VALUE_NOT_SUPPORTED |
ps | CM_PRODUCT_SPECIFIC_ERROR |
rf | CM_RESOURCE_FAILURE_RETRY |
nr | CM_NO_SECONDARY_RETURN_CODE |
un | CM_OPERATION_UNSUCCESSFUL |
Table 20: Abbreviations for the state table (1)
Result | data_received and status_received: |
dr | CM_COMPLETE_DATA_RECEIVED |
nd | CM_NO_DATA_RECEIVED |
no | CM_NO_STATUS_RECEIVED |
se | CM_SEND_RECEIVED |
Table 21: Abbreviations for the state table (2)
Follow-up state | Meaning |
- | No state change |
psc | Error CM_PROGRAM_STATE_CHECK |
Table 22: Abbreviations for the state table (3)
The return code CM_CALL_NOT_SUPPORTED is not included in the state table. It is returned if the UPIC library includes the call but the function is not supported in the specific situation. There is no change of state.