Making Calls from a CICS Client Program

To make a service call from a CICS program to a remote Oracle Tuxedo domain, make an EXEC CICS LINK call to the Pre-requester. The service you want to access must be configured by the Oracle TMA Administrator, but from a programming point of view the LINK call is all you need. The following COBOL record is in the COBOL copybook client.cbl.

Listing 5-1 COBOL Record

01 REQUEST-RECORD.

 

05

REQUEST-HEADER.

 

 

10

DATALEN

PIC S9(08) COMP.

 

10

SVCNAME[16]

PIC X(16).

 

10

REQUESTCD

PIC S9(08) COMP.

 

10

RETURNCD

PIC S9(08) COMP.

 

10

REQRETURNCD

PIC S9(08) COMP.

05

REQUEST-DATA.

 

 

10

DATA-AREA

PIC X(DATALEN).

 

 

 

 

The layout of the structure in C that must be passed in the LINK call is shown in Listing 5-2. The following C structures are in the clienth.h INCLUDE file.

Listing 5-2 C Structures

typedef struct CLIENTHDR

 

{

 

long DataLen;

/* THE LEN OF THE DATA FROM AND TO APPL */

char SvcName[16];

/* THE SERVICE NAME */

long RequestCd;

/* THE REQUEST COMMAND FROM THE APPL */

long ReturnCd;

/* THE RETURN CODE TO THE APPL */

long ReqReturnCd;

/* THE RETURN CODE FROM THE PREQ AND REQ */

} CLIENTHDR;

 

typedef struct CMAREA

 

{

 

5-2

Oracle Tuxedo Mainframe Adapter for TCP - CICS User Guide

Page 90
Image 90
Oracle Audio Technologies Oracle Tuxedo manual Making Calls from a Cics Client Program, Listing 5-1 Cobol Record