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 Server 프로그램의 이름과 클라이언트에서 수신할 요청 데이터의 길이가 포함됩니다. 다음 코드 샘플에서는 이 데이터 영역의 내용을 보여 줍니다.
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'.