RUI_PURGE

RUI_PURGE谓词取消以前的RUI_READ

以下结构描述了 RUI_PURGE 使用的谓词控制块(VCB)的 LUA_COMMON成员。

语法

  
struct LUA_COMMON {  
    unsigned short lua_verb;  
    unsigned short lua_verb_length;  
    unsigned short lua_prim_rc;  
    unsigned long  lua_sec_rc;  
    unsigned short lua_opcode;  
    unsigned long  lua_correlator;  
    unsigned char  lua_luname[8];  
    unsigned short lua_extension_list_offset;  
    unsigned short lua_cobol_offset;  
    unsigned long  lua_sid;  
    unsigned short lua_max_length;  
    unsigned short lua_data_length;  
    char FAR *      lua_data_ptr;  
    unsigned long  lua_post_handle;  
    struct LUA_TH  lua_th;  
    struct LUA_RH  lua_rh;  
    struct LUA_FLAG1 lua_flag1;  
    unsigned char  lua_message_type;  
    struct LUA_FLAG2 lua_flag2;  
    unsigned char  lua_resv56[7];  
    unsigned char  lua_encr_decr_option;  
};  

成员

lua_verb
提供的参数。 包含谓词代码,LUA_VERB_RUI请求单元接口(RUI)谓词。

lua_verb_length
提供的参数。 指定逻辑单元应用程序 (LUA) VCB 的长度(以字节为单位)。 它必须包含所发出的谓词记录的长度。

lua_prim_rc
在谓词完成时由 LUA 设置的主要返回代码。 有效的返回代码因颁发的 LUA 谓词而异。

lua_sec_rc
在谓词完成时由 LUA 设置的辅助返回代码。 有效的返回代码因颁发的 LUA 谓词而异。

lua_opcode
提供的参数。 包含要颁发的谓词的 LUA 命令代码(谓词作代码),LUA_OPCODE_RUI_PURGE。

lua_correlator
提供的参数。 包含一个用户提供的值,该值将谓词与其他用户提供的信息链接在一起。 LUA 不使用或更改此信息。 此参数是可选的。

lua_luname
提供的参数。 指定 Windows LUA 会话使用的本地 LU 的 ASCII 名称。

RUI_PURGE 仅当 lua_sid 为零时才需要此参数。

如果名称短于 8 个字符,则此参数长度为 8 字节,用空格(0x20)在右侧填充。

lua_extension_list_offset
Microsoft Host Integration Server 中® RUI 未使用,应设置为零。

lua_cobol_offset
主机集成服务器中 LUA 未使用,应为零。

lua_sid
提供的参数。 指定会话标识符,并由 SLI_OPENRUI_INIT返回。 其他谓词使用此参数标识用于命令的会话。 如果其他谓词使用 lua_luname 参数标识会话,请将 lua_sid 参数设置为零。

lua_max_length
RUI_PURGE 不使用,应 设置为零。

lua_data_length
RUI_PURGE 不使用,应 设置为零。

lua_data_ptr
指向要取消的 RUI_READ 谓词 VCB 的位置。

lua_post_handle
提供的参数。 在Microsoft® Windows Server 下使用(如果事件要完成异步通知)。 此变量包含要发出信号的事件句柄或窗口句柄。

lua_th
RUI_PURGE 不使用,应 设置为零。

lua_rh
RUI_PURGE 不使用,应 设置为零。

lua_flag1
RUI_PURGE 不使用,应 设置为零。

lua_message_type
RUI_PURGE 不使用,应 设置为零。

lua_flag2
返回的参数。 包含 LUA 返回的消息的标志。

lua_flag2.async

指示 LUA 接口谓词在设置为 1 时异步完成。

lua_resv56
保留,应设置为零。

lua_encr_decr_option
保留,应设置为零。

返回代码

LUA_OK
主要返回代码;已成功执行谓词。

LUA_CANCELED
主要返回代码;该谓词未成功完成,因为它已被另一个谓词取消。

LUA_TERMINATED

辅助返回代码; RUI_PURGE 挂起时发出 了RUI_TERM

LUA_PARAMETER_CHECK
主要返回代码;由于参数错误,谓词未执行。

LUA_BAD_DATA_PTR

辅助返回代码; lua_data_ptr 参数设置为 null。

LUA_BAD_SESSION_ID

辅助返回代码;VCB 中指定了 lua_sid 的无效值。

LUA_INVALID_POST_HANDLE

辅助返回代码;对于使用事件作为异步发布方法的 Windows作系统,Windows LUA VCB 不包含有效的事件句柄。

LUA_RESERVED_FIELD_NOT_ZERO

辅助返回代码;谓词记录中的保留字段或此谓词不使用的参数设置为非零值。

LUA_VERB_LENGTH_INVALID

辅助返回代码;LUA 谓词的值为 LUA 意外 lua_verb_length 发出。

LUA_STATE_CHECK
主要返回代码;该谓词未执行,因为它以无效状态发出。

LUA_NO_RUI_SESSION

辅助返回代码; RUI_INIT 尚未成功完成此谓词中指定的 LU 名称。

LUA_UNSUCCESSFUL
主要返回代码;提供的谓词有效,但谓词未成功完成。

LUA_INVALID_PROCESS

辅助返回代码;发出此谓词的 OS/2 进程与为此会话发出 RUI_INIT 的过程不同。 只有启动会话的进程才能在该会话上发出谓词。

LUA_NO_READ_TO_PURGE

辅助返回代码; lua_data_ptr 不包含指向 RUI_READ VCB 的指针 ,或RUI_READ 在发出 RUI_PURGE 之前完成。

LUA_COMM_SUBSYSTEM_ABENDED
主要返回代码;指示以下条件之一:

  • 此会话使用的节点遇到 ABEND。

  • 事务程序(TP)与物理单元(PU)2.1 节点之间的连接已断开(LAN 错误)。

  • TP 计算机上的 SnaBase 遇到 ABEND。

    LUA_SESSION_FAILURE
    主要返回代码;所需的 Host Integration Server 组件已终止。

    LUA_LU_COMPONENT_DISCONNECTED

    辅助返回代码;指示 LUA 会话由于链接服务或主机 LU 出现问题而失败。

    LUA_RUI_LOGIC_ERROR

    辅助返回代码;LUA 中检测到内部错误。 在正常作期间不应发生此错误。

    LUA_INVALID_VERB
    主要返回代码;谓词代码或作代码或两者都无效。 谓词未执行。

    LUA_STACK_TOO_SMALL
    主要返回代码;应用程序的堆栈大小太小,无法执行谓词。 增加应用程序的堆栈大小。

    LUA_COMM_SUBSYSTEM_NOT_LOADED
    主要返回代码;无法在处理谓词时加载或终止所需的组件。 因此,无法进行通信。 请联系系统管理员以采取纠正措施。

    LUA_UNEXPECTED_DOS_ERROR
    主要返回代码;发出作系统调用后,收到意外的作系统返回代码,并在辅助返回代码中指定。

注解

如果未使用 lua_flag1.nowait (立即返回)选项发送,并且指定流上没有可用数据,则RUI_READ可以无限期等待。 RUI_PURGE 强制等待谓词返回(主返回代码LUA_CANCELED)。

仅当发出 RUI_READ 并且等待完成时,才使用此谓词。 (主要返回代码为LUA_IN_PROGRESS。

另请参阅

RUI_INIT
RUI_READ
RUI_TERM
RUI_WRITE
SLI_OPEN
SLI_PURGE
SLI_RECEIVE
SLI_SEND