The distributed program link function enables a
CICS®
program (the client program)
to call another
CICS
program
(the server program) in a remote
CICS
region.
There are several reasons why you might want to design your
application
to use distributed program link. Some of these are:
To separate the end-user interface (for example, BMS screen
handling)
from the application business logic, such as accessing and processing
data, to enable parts of the applications to be ported from host to
workstation more readily
To obtain performance benefits from running programs closer to
the resources they access, and thus reduce the need for repeated
function
shipping requests
To offer a simple alternative, in many cases, to writing
distributed
transaction processing (DTP) applications
There are several ways in which you can specify that the program
to which an application is linking is remote:
By specifying the remote system name on a LINK command
By specifying the remote system name on the installed program
resource definition.
By specifying the remote system name using the dynamic routing
program (if the installed program definition specifies DYNAMIC(YES)
or there is no installed program definition)
By specifying the
remote system name in a XPCREQ global user exit
The basic flow in distributed program link is described in
CICS distributed program link
. The following terms, illustrated in
Figure 1
, are used in the discussion of distributed program link:
Client region
The
CICS
region running an application program that issues a link to
a program in another
CICS
region.
Server region
The
CICS
region to which a client region ships a link
request.
Client program
The application program that issues a remote link request.
Server program
The application program specified on the link request, and
which is executed in the server
region.
Figure 1. Illustration of distributed program link