退出 XDLIPRE
在进入 DL/I 接口程序时调用出口 XDLIPRE。 在此出口中运行的程序必须按线程安全标准进行编码,并将 CICS® 定义为线程安全。
特定于出口的参数
- 用户类型
- 请求类型字节的地址。 值包括:
- UEPCEXEC
- 原始请求是 EXEC DLI 请求。
- UEPCCALL
- 原始请求是 CALL 级别的请求。
- UEPCSHIP
- 该请求已从另一个区域交付。 设置此值时,将限制应用于其余出口参数的设置和使用,如所述。
- UEPAPLIST
- 应用程序的参数列表的地址。 COBOL 和汇编语言的一般格式为:
plist address --> parm1 address --> parm1 parm2 address --> parm2 parm3 address --> parm3 .............. up to a maximum of 18 parameters excluding the optional parmcount.PL/I 的常规格式为:
当 UEPCTYPE 不是 UEPCSHIP 时,您的出口程序可以更改应用程序参数列表中的任何参数。 对于 UEPCSHIP 请求,出口程序 不能 更改任何参数。 此外,对于 UEPCSHIP 请求, UEPAPLIST 指向上述格式的参数列表的副本,但仅包含前两个参数plist address --> parm1 address --> parm1 (parmcount) parm2 address --> locator descriptor --> parm2 parm3 address --> locator descriptor --> parm3 .............. up to a maximum of 18 parametersparm1和parm2。注: 对于 PL/I 应用程序,parm1可能包含也可能不包含参数计数。 您的出口程序应先检查此字段,然后再使用此字段。 - 欧 PLANG
- 程序语言字节的地址。 值包括:
- UEPPLI
- PL/I
- 欧 PCBL
- COBOL
- UEPASM
- 汇编语言。
对于 UEPCSHIP 请求,语言始终是汇编程序。
- UEPIOAX
- I/O 区域存在的地址标志字节:
- UEPIOA1
- I/O 区域存在。
对于 UEPCSHIP 请求, I/O 区域存在标志始终处于关闭状态。
- UEPIOA
- I/O 区域的地址。 这是应用程序的 IOAREA 或 DFHEDP 的 IOAREA (对于 EXEC DLI)。 可在出口中覆盖 IOAREA 的内容: 在处理 DL/I 请求时使用新内容。 但是,应该注意的是, IOAREA 可以在程序的静态存储器中,在这种情况下,不应该被覆盖。
对于 UEPCSHIP 请求, UEPIOA 始终为零。
- UEPPSBNX
- PSB 存在标志字节的地址:
- UEPPSB1
- 存在 PSB。
- UEPPSBNM
- 包含 8 字符 PSB 名称的区域的地址。 对于所有类型的请求 (包括 UEPCSHIP) ,出口可覆盖该区域的内容; 处理 DL/I 请求时将使用新内容。
- UEPSYSDX
- SYSID 存在标志字节的地址:
- UEPSYS1
- 存在 SYSID。
- UEPSYSID
- 包含 4 字符 SYSID 名称的区域的地址。 对于所有类型的请求 (包括 UEPCSHIP) ,出口可覆盖该区域的内容; 处理 DL/I 请求时将使用新内容。
返回码
- UERCNORM
- 继续处理
- UERCBYP
- 绕过 DL/I 请求并返回
- UERCPURG
- 在 XPI 调用期间清除了任务。
XPI 调用
都可以用。
API 和 SPI 调用
不能使用任何值。