Microsoft Concurrent Server
MSCS 事务 (程序 mscmtics.cbl) 示例支持标准和增强侦听器。 事务程序可由增强侦听器或标准侦听器启动。
启动并发服务器时,每个侦听器将唯一的事务启动消息 (TIM) 传递给事务程序。 标准侦听器格式化并传递以下代码示例中所示的 TIM。 此 TIM 的长度为 72 字节。
01 TRANSACTION-INITIATION-MESSAGE.
05 GIVE-TAKE-SOCKET PIC 9(8) COMP.
05 LSTN-NAME PIC X(8).
05 LSTN-SUBNAME PIC X(8).
05 CLIENT-IN-DATA PIC X(35).
05 FILLER PIC X(1).
05 SOCKADDR-IN-PARM.
15 SIN-FAMILY PIC 9(4) COMP.
15 SIN-PORT PIC 9(4) COMP.
15 SIN-ADDRESS PIC 9(8) COMP.
15 SIN-ZERO PIC X(8).
增强型侦听器格式化并传递以下代码示例中显示的 TIM。 此 TIM 的长度为 189 字节。
01 TRANSACTION-INITIATION-MESSAGE.
05 GIVE-TAKE-SOCKET PIC 9(8) COMP.
05 LSTN-NAME PIC X(8).
05 LSTN-SUBNAME PIC X(8).
05 CLIENT-IN-DATA PIC X(35).
05 FILLER PIC X(1).
05 SOCKADDR-IN-PARM.
15 SIN-FAMILY PIC 9(4) COMP.
15 SIN-PORT PIC 9(4) COMP.
15 SIN-ADDRESS PIC 9(8) COMP.
15 SIN-ZERO PIC X(8).
05 FILLER PIC X(80).
05 DATA-AREA-2-LEN PIC 9(4) COMP.
05 DATA-AREA-2 PIC X(35).
mscmtics.cbl 示例并发服务器可以通过评估收到的 TIM 的长度来确定使用的是标准侦听器还是增强侦听器。
在增强型侦听器启动 Microsoft 并发服务器的情况下,mscmtics.cbl 程序查看 TIM 数据区域 2 字段中的 ELM 中包含的客户端数据。 客户端数据包含要执行的 CICS 服务器程序的名称以及要从客户端接收的请求数据的长度。 下面的代码示例演示此数据区域的内容。
01 CLIENT-IN-DATA PIC X(35).
01 FILLER REDEFINES CLIENT-IN-DATA.
05 CID-USERID PIC X(8).
05 CID-PASSWORD PIC X(8).
05 CID-LINK-TO-PROG PIC X(8).
05 CID-COMMAREA-LEN PIC S9(4) COMP.
05 CID-DATA-LEN PIC S9(8) COMP.
05 CID-VERSION PIC X.
88 CID-VERSION-1 VALUE X'00'.
88 CID-VERSION-2 VALUE X'01'.
05 CID-FLAGS PIC X(2).
88 CID-FLAGS-PERSISTENT-NONE VALUE X'0001'.
88 CID-FLAGS-PERSISTENT-OPEN VALUE X'0002'.
88 CID-FLAGS-PERSISTENT-USE VALUE X'0004'.
88 CID-FLAGS-PERSISTENT-CLOSE VALUE X'0008'.
05 CID-RESERVED PIC X.
05 CID-FORMAT PIC X.
88 CID-FORMAT-NOTSET VALUE X'00'.
88 CID-FORMAT-MS VALUE X'01'.
88 CID-FORMAT-IBM VALUE X'02'.