UniKix is UniKix Technologies' CICS system for open systems. Open PL/I supports and is supported by UniKix to enable you to develop On-Line Transaction Processing applications in PL/I.
To create UniKix screens, use UniKix's BMS screen generator utility. Within your screen definition place the command:
LANGUAGE = PLI
Open PL/I provides a CICS precompiler, kixplt, that you can use to process embedded EXEC CICS statements within your PL/I programs. For more information about using Open PL/I's CICS precompiler, see the section Precompiler and Preprocessor Order of Execution .
While the CICS precompiler can be invoked directly with kixplt, we recommend that you invoke it with the -unikix option to the mfplx command.
The following restrictions apply to Open PL/I programs being used as UniKix applications:
If OPTIONS(MAIN) is specified in an application program, that program can be the first program of a transaction, or control can be passed to it by means of an EXEC CICS LINK or XCTL command.
The definition of the External Interface Block (EIB) is generated in each program based upon the pointer variable DFHEIPTR. In programs compiled with OPTIONS(MAIN), the DFHEIPTR variable is set by UniKix to address the EIB on entry; therefore, the CICS precompiler will insert DFHEIPTR and DFHCOMMAREA (pointer to the communications area) as parameters of the MAIN program. For example, the following source line
TEST: PROCEDURE OPTIONS(MAIN);
will be translated to
TEST: PROCEDURE(DFHEIPTR, DFHCOMMAREA) OPTIONS(CICSMAIN);
In programs other than those declared with OPTIONS(MAIN), addressability to the EIB is the user's responsibility. This can be achieved by using the CICS command
EXEC CICS ADDRESS EIB(DFHEIPTR);
or by passing the EIB address or the values of particular EIB fields as parameters.
To perform proper initialization and cleanup, all procedures declared with OPTIONS(MAIN) that contain EXEC CICS statements, or that are calling other procedures containing EXEC CICS statements, must be run through the CICS precompiler.
Open PL/I's UniKix support is license managed. You must obtain a special license from Micro Focus to use it. Of course, you must also have the UniKix product.