Application program types
APPC/IMS is part of IMS TM that uses the CPI communications interface to communicate with application programs.
APPC/IMS supports the following types of application programs for LU 6.2 processing:
- Standard DL/I
- Modified standard DL/I
- CPI Communications driven
Standard DL/I application program
A standard DL/I application program does not issue any CPI Communications calls or establish any CPI-C conversations. This application program can communicate with LU 6.2 products that replace other LU-type terminals using the IMS API. A standard DL/I application program does not need to be modified, recompiled, or bound, and it executes as it currently does.
Modified standard DL/I application program
A modified standard DL/I application program is a standard DL/I online IMS TM application program that uses both DL/I calls and CPI Communications calls. It can be an MPP, BMP, or IFP that can access full-function databases, DEDBs, MSDBs, and Db2 for z/OS® databases.
A modified standard
DL/I application program uses CPI Communications (CPI-C) calls to provide support for an LU 6.2 and
non-LU 6.2 mixed network. The same application program can be a standard DL/I on one execution, when
the CPI Communications ALLOCATE
verb is not issued, and a modified standard DL/I on
a different execution when the CPI Communications ALLOCATE
verb is issued.
A
modified standard DL/I application program receives its messages using DL/I GU
calls to the I/O PCB and issues output responses using DL/I ISRT
calls. CPI
Communications calls can also be used to allocate new conversations and to send and receive data for
them.
Related Reading: For a list of the CPI Communications calls, see CPI Communications Reference.
Use a modified standard DL/I application program when you want to use an existing standard DL/I application program to establish a conversation with another LU 6.2 device or the same network destination. The standard DL/I application program is optionally modified and uses new functions, new application and transaction definitions, and modified DL/I calls to initiate LU 6.2 application programs. Program calls and parameters are available to use the IMS-provided implicit API and the CPI Communications explicit API.
CPI Communications driven program
A CPI Communications driven application
program uses Commit
and Backout
calls, and CPI Communications
interface calls or LU 6.2 verbs for input and output message processing. This application program
uses the CPI Communications explicit API, and can access full-function databases, DEDBs, MSDBs, and
Db2 for z/OS databases. An LU 6.2 device
can activate a CPI Communications driven application program only by allocating a
conversation.
Unlike a standard DL/I or modified standard DL/I application program, input and
output message processing for a CPI Communications driven program uses APPC/MVS buffers and bypasses IMS message queueing.
Because these application programs do not use the IMS message
queue, they can control their own execution with the partner LU 6.2 system. An IMS
APSB
call enables you to allocate a PSB for accessing IMS databases and alternate PCBs.
The application program uses the Common
Programming Interface Resource Recovery (CPI-RR) SRRCMIT
verb to initiate an IMS sync point and the CPI-RR SRRBACK
verb for
backout. CPI Communications driven application programs use the CPI-RR calls to initiate IMS sync point processing prior to program termination.
A CPI Communications driven application program is able to:
- Access any type of database
- Receive and send large messages like the standard DL/I and modified standard DL/I application programs
- Control the flow of input and output with CPI Communications calls
- Allocate multiple conversations with partner LU 6.2 devices
- Cause synchronization with conversation partners
- Use the IMS implicit API (for example, IMS queue services)
- Use IMS services (for example, sync point at program termination) regardless of the API that is used