MC_RECEIVE_LOG_DATA
MC_RECEIVE_LOG_DATA谓词允许用户注册以接收与入站函数管理标头 7 关联的日志数据, (FMH7) 错误报告。 谓词将缓冲区传递给 APPC,接收的任何日志数据都放置在该缓冲区中。 当连续 FMH7 到达时,APPC 会继续使用此缓冲区,直到它提供另一个缓冲区 (即,直到事务程序 (TP) 发出另一个 MC_RECEIVE_LOG_DATA 指定其他缓冲区或) 完全没有缓冲区。
请注意,TP 本身负责分配和释放缓冲区。 缓冲区传递到 APPC 后,TP 应发出另一 个MC_RECEIVE_LOG_DATA 指定新缓冲区或零长度缓冲区,或等待会话完成,然后释放原始缓冲区。
收到 FMH7 时,APPC 会将任何关联的错误日志常规数据流 (GDS) 复制到缓冲区中。 如果没有关联的错误日志变量,则会将缓冲区归零。每当接收谓词的返回代码指示已收到错误时,TP 将检查缓冲区。
以下结构描述了MC_RECEIVE_LOG_DATA谓词使用的谓词控制块 (VCB ) 。
语法
struct mc_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_M_RECEIVE_LOG_DATA。
opext
提供的参数。 指定谓词操作扩展,AP_MAPPED_CONVERSATION。
reserv1
一个保留字段。
primary_rc
返回的参数。 指定在谓词完成时由 APPC 设置的主要返回代码。 有效的返回代码因发出的 APPC 谓词而异。 有关此谓词的有效错误代码,请参阅“返回代码”。
secondary_rc
返回的参数。 指定在谓词完成时由 APPC 设置的次要返回代码。 有效的返回代码因发出的 APPC 谓词而异。 有关此谓词的有效错误代码,请参阅“返回代码”。
tp_id
提供的参数。 标识本地 TP。 此参数的值由调用 TP 中的 TP_STARTED 或调用的 TP 中的 RECEIVE_ALLOCATE 返回。
conv_id
提供的参数。 提供会话标识符。 此参数的值由调用 TP 中的 MC_ALLOCATE 或调用的 TP 中的 RECEIVE_ALLOCATE 返回。
log_dlen
提供的参数。 指定 APPC 可以放置在缓冲区中的日志数据的最大长度 (即缓冲区大小) 。 范围为 0 到 65535。 请注意,此处的长度为零表示应取消任何以前的 MC_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 标识符不匹配。