Understanding CPI Communications
Common Programming Interface (CPI) Communications (also known as SAA communications interface) is an SAA defined interface you can use to write APPC communications programs in REXX, assembler or high-level programming languages. CPI Communications defines a set of routines that programs can use so that they will be more portable to other systems that abide by SAA's definitions.
In addition, z/VM® has
defined some routines that are extensions to CPI Communications. These z/VM extension
routines are useful to exploit the capabilities of the z/VM operating system.
In this book, the term CPI Communications
includes the SAA routines
and z/VM's extension routines.
Like the APPC/VM assembler interface, CPI Communications lets your program communicate with another program that is on the same z/VM system, on a different z/VM system, or in a network defined by SNA. Both communicating programs (called partner programs) do not have to use CPI Communications routines. However, writing programs using CPI Communications routines is easier than coding programs with APPC/VM assembler functions, for two important reasons:
- CPI Communications routines do not have to be called from assembler language programs. Programs written in REXX or high-level languages such as COBOL can take advantage of this communications interface.
- The CPI Communications definition generally includes fewer parameters on routines.
Throughout this chapter, assume that both partner programs are using CPI Communications routines.