錯誤 (CPI C)
下表摘要說明發生資料傳輸錯誤時所發生的狀態變更。
return_code | 舊狀態 | 新增狀態 |
---|---|---|
CM_PROGRAM_ERROR_PURGING | RECEIVE | 沒有變更 |
CM_PROGRAM_ERROR_NO_TRUNC | RECEIVE | 沒有變更 |
CM_SVC_ERROR_PURGING | SEND | RECEIVE |
CM_SVC_ERROR_NO_TRUNC | SEND_PENDING | RECEIVE |
如果合作夥伴計畫截斷邏輯記錄,本機計畫會在下一次接收呼叫時透過return_code收到截斷的通知。
如果程式發出Receive,requested_length設定為零,則會如往常執行呼叫。 不過,相同的接收呼叫不會設定data_received和status_received。 (這種情況的其中一個例外狀況是透過對應交談傳送的 Null 記錄,如下一個段落所述。)
在可從合作夥伴計畫取得資料的對應交談中, data_received 設為CM_INCOMPLETE_DATA_RECEIVED。 如果合作夥伴) 計畫所發出之Send_Data呼叫中的 null記錄 (send_length可用,則data_received設定為CM_COMPLETE_RECORD_RECEIVED,received_length設定為零。
在可用的資料且填滿特性設定為CM_FILL_LL的基本交談中, data_received 設定為 CM_INCOMPLETE_DATA_RECEIVED。 如果填滿特性設定為 CM_FILL_BUFFER,data_received 會設定為 CM_DATA_RECEIVED。
邏輯單元 (LU) 不會在接收的資料字串上自動執行 EBCDIC 與 ASCII 之間的任何轉換,然後再將其放入 緩衝區中。 如有必要,程式可以使用 Common Service Verb (CSV) CONVERT ,將字串從一個字元集轉譯到另一個字元。