The External CICS Interface (EXCI) is an API that enables a non-CICS program (a client program) running in a z/OS address space outside of CICS to synchronously call a program (a server program) running in a CICS region and to pass and receive data.
In CICS TS 5.4 the EXCI was enhanced to allow use of a Channel and set of containers as an alternative to using a communications area (COMMAREA) to pass data to and from the CICS server program. See CICSDev article.
The CICS TS 5.5 level of EXCI
In CICS TS 5.5 the EXCI is further enhanced to allow an EXCI client program to use the same SPI commands that are available to an online CICS TS program when processing a channel and set of containers. The new commands supported are:
- EXEC CICS QUERY CHANNEL
- EXEC CICS STARTBROWSE CONTAINER
- EXEC CICS GETNEXT CONTAINER
- EXEC CICS ENDBROWSE CONTAINER
The QUERY CHANNEL command returns the number of containers that are present on a named channel.
The STARTBROWSE CONTAINER, GETNEXT CONTAINER and ENDBROWSE CONTAINER commands allow an EXCI client program to browse through the set of containers on a named channel. The GETNEXT CONTAINER command does not return the contents of a container, it just returns the name of the CONTAINER.
The new SPI commands operate on the channel and containers present in the EXCI client address space, no communication with CICS TS occurs.
For more information on channels and containers, see our reference material in the CICS Knowledge Center.