RECEIVE_LOG_DATA動詞命令可讓使用者註冊以接收與輸入函式管理標頭 7 (FMH7) 錯誤報告相關聯的記錄數據。 動詞命令會將緩衝區傳遞至APPC,而接收的任何記錄數據都會放在該緩衝區中。 APPC 會繼續使用此緩衝區,因為連續 FMH7s 會到達,直到它與另一個緩衝區一起提供為止(也就是說,直到交易程式 (TP) 發出另一個 RECEIVE_LOG_DATA 指定不同的緩衝區或完全沒有緩衝區)。
請注意,TP 本身負責配置和釋放緩衝區。 將緩衝區傳遞至APPC之後,TP應該發出另一個 RECEIVE_LOG_DATA 指定新緩衝區或長度為零的緩衝區,或等到交談完成,再釋放原始緩衝區。
收到 FMH7 時,APPC 會將任何相關聯的錯誤記錄檔一般數據流 (GDS) 複製到緩衝區。 如果沒有相關聯的錯誤記錄變數,則會將緩衝區歸零。每當接收動詞的傳回碼指出已收到錯誤時,TP 就會檢查緩衝區。
下列結構描述 RECEIVE_LOG_DATA 動詞命令所使用的動詞控制區塊 (VCB)。
語法
struct receive_log_data {
unsigned short opcode;
unsigned char opext;
unsigned char reserv1;
unsigned short primary_rc;
unsigned long secondary_rc;
unsigned char tp_id[8];
unsigned long conv_id;
unsigned short log_dlen;
unsigned char FAR * log_dptr;
};
成員
opcode
提供的參數。 指定動詞作業程式代碼,AP_B_RECEIVE_LOG_DATA。
opext
提供的參數。 指定動詞作業延伸模組,AP_BASIC_CONVERSATION。
reserv1
保留欄位。
primary_rc
傳回的參數。 指定APPC在動詞完成時設定的主要傳回碼。 有效的傳回碼會根據所發出的APPC動詞而有所不同。 如需這個動詞的有效錯誤碼,請參閱傳回碼。
secondary_rc
傳回的參數。 指定APPC在動詞完成時所設定的次要傳回碼。 有效的傳回碼會根據所發出的APPC動詞而有所不同。 如需這個動詞的有效錯誤碼,請參閱傳回碼。
tp_id
提供的參數。 識別本機 TP。 這個參數的值是由叫用 TP 中的 TP_STARTED 或叫用的 TP 中的 RECEIVE_ALLOCATE 所傳回。
conv_id
提供的參數。 提供交談標識碼。 在叫用的 TP 或叫用的 TP 中RECEIVE_ALLOCATE,會傳回此參數的值。
log_dlen
提供的參數。 指定APPC可以在緩衝區中放置的記錄數據長度上限(也就是緩衝區大小)。 範圍是從 0 到 65535。 請注意,此處的長度為零,表示應該取消任何先前 的RECEIVE_LOG_DATA 動詞。
log_dptr
提供的參數。 指定APPC將用來儲存記錄數據的緩衝區位址。
回傳代碼
AP_OK
主要傳回碼;已順利執行動詞。
AP_PARAMETER_CHECK
主要傳回碼;因為參數錯誤而未執行動詞。
AP_BAD_CONV_ID
次要傳回碼; conv_id 的值與 APPC 指派的交談標識碼不符。
AP_BAD_TP_ID
次要傳回碼; tp_id 的值與 APPC 指派的 TP 識別碼不符。