ACBX Examples

Two sample COBOL programs are provided to illustrate how to make Adabas ACBX direct calls:

  • COBADA8 is a COBOL program you could run in a batch/TSO environment. Its source can be found in the COBADA8 member of the ADAvrs.MVSSRCE library.

  • COBACI8 is a COBOL program you could run under CICS/TS. Its source can be found in the COBACI8 member of the ACIvrs.MVSSRCE library.

The source modules for both programs should be compiled using the Enterprise COBOL compiler Version 3 Release 3 or later.

Note:
These programs are provided "as is" and will not be supported by Software AG.

This document describes examples of direct calls using the ACBX interface. The last two examples are sample PL/I programs to illustrate ACBX calls.


COBADA8: Batch/TSO Example

COBADA8 is a COBOL program you could run in a batch/TSO environment. Its source can be found in the COBADA8 member of the ADAvrs.MVSSRCE library.

Before compiling COBADA8, review the source, especially the comments so the proper database ID and file number are used in the WORK-DBID and WORK-FNR fields defined in the WORKING-STORAGE section of the program.

COBADA8 should be link-edited with the ADAUSER load module in which case the CALL statement should use the literal "ADABAS" as the program being invoked.

If COBADA8 is compiled and link-edited as a reentrant module, use the LNK-NAME field in the CALL statement and supply a value of "ADAUSER" on the LINK-NAME definition in WORKING-STORAGE.

The IBM cataloged procedures IGYWC, IGYWCL or IGYWCLG may be used to compile, compile and link or compile, link and execute the COBADA8 program. Consult the appropriate IBM documentation for information on compiling, linking and executing an Enterprise COBOL module. Your installation may have standards for these procedures or different JCL procedures for compiling, linking and executing an Enterprise COBOL module.

COBACI8: CICS/TS Example

COBACI8 is a COBOL program you could run under CICS/TS. Its source can be found in the COBACI8 member of the ACIvrs.MVSSRCE library.

Before compiling COBACI8, review the source member and provide the proper values for WORK-DBID and WORK-FNR in the WORKING-STORAGE section. In addition, supply the proper value for the LINK-NAME field to name the Adabas Version 8 CICS application stub that should be the object of the EXEC CICS LINK command used to invoke Adabas CICS services. This name should match the name provided in the Adabas CICS globals table, keyword ENTPT, used in the CICS region where COBACI8 is to be executed.

The COBACI8 program is intended to be compiled with the built-in CICS pre-processor support provided by the Enterprise COBOL compiler. After compiling and linking the source module with the appropriate cataloged procedure or JCL, the module COBACI8 and a transaction to execute it must be defined to CICS using RDO or the CEDA facility. The COBACI8 module uses the CICS COMMAREA to communicate with the Adabas Version 8 CICS application stub. It is not necessary to define a CICS TWA (Transaction Work Area) to execute the COBACI8 with a CICS transaction.

The following table lists the PL/I sample components for ACBX programs under CICS:

Member Description
PLIADAC PL/I Sample ADACBX main program
PADABASX PL/I ADACBX and ADABDX structure declarations
PDACOMX PL/I CICS CommArea for ADACBX

The IBM cataloged procedures IBMZC, IBMZCB or IBMZCBG may be used to compile, compile and bind (link) or compile, bind (link) and execute the PLIADAX program. Consult the appropriate IBM documentation for information on compiling, linking and executing an Enterprise PL/I module. Your installation may have standards for these procedures or different JCL procedures for compiling, linking and executing an Enterprise PL/I module.

PLIADAX: Batch/TSO Example

PLIADAX is a PL/I program you could run in a batch/TSO environment. Its source can be found in the PLIADAX member of the ADAvrs.MVSSRCE library. It is written to conform to the language specification of Enterprise PL/I for z/OS V4.1.

This program will issue L1 commands to list from the sample Employees file provided with Adabas. Refer to member ADALODE of the MVSJOBS dataset to load the file.

Before compiling PLIADAX review the source, especially the comments, so the proper file number is used.

PLIXADAX should be link-edited with the ADAUSER load module, in which case the CALL statement should use the symbol ADABAS as the program being invoked.

The following table lists the PL/I sample components for ACBX programs:

Member Description
PLIADAX PL/I Sample ADACBX main program
PADABASX PL/I ADACBX and ADABDX structure declarations
PADACALX PL/I ADABAS entry with APLX linkage declarations

The IBM cataloged procedures IBMZC, IBMZCB or IBMZCBG may be used to compile, compile and bind (link) or compile, bind (link) and execute the PLIADAX program. Consult the appropriate IBM documentation for information on compiling, linking and executing an Enterprise PL/I module. Your installation may have standards for these procedures or different JCL procedures for compiling, linking and executing an Enterprise PL/I module.

PLIADAC: CICS/TS Example

PLIADAC is a PL/I program you could run under CICS/TS. Its source can be found in the PLIADAC member of the ACIvrs.MVSSRCE library. It is written to conform to the language specification of Enterprise PL/I for z/OS V4.1.

This program will issue L1 commands to list from the sample Employees file provided with Adabas. Refer to member ADALODE of the MVSJOBS dataset to load the file.

Before compiling PLIADAC review the source, especially the comments, so the proper file number is used. In addition, supply the proper value for the variable ADALnkName to specify the name of the Adabas Version 8 CICS application stub that should be the object of the EXEC CICS LINK command used to invoke Adabas CICS services. This name should match the name provided in the Adabas CICS globals table, keyword ENTPT, used in the CICS region where PLIADAC is to be executed.

The PLIADAC program is intended to be compiled with the built-in CICS pre-processor support provided by the Enterprise PL/I compiler. After compiling and linking/binding the source module using a appropriate cataloged procedure or JCL, the module PLIADAC and a transaction to execute it must be defined to CICS using RDO or the CEDA facility. The PLIADAC module uses the CICS COMMAREA to communicate with the Adabas Version 8 CICS application stub. It is not necessary to define a CICS TWA (Transaction Work Area) to execute PLIADAC with a CICS transaction.

Member Description
PLIADAC PL/I Sample ADACBX main program
PADABASX PL/I ADACBX and ADABDX structure declarations
PDACOMX PL/I CICS CommArea for ADACBX

The IBM cataloged procedures IBMZC, IBMZCB or IBMZCBG may be used to compile, compile and bind (link) or compile, bind (link) and execute the PLIADAX program. Consult the appropriate IBM documentation for information on compiling, linking and executing an Enterprise PL/I module. Your installation may have standards for these procedures or different JCL procedures for compiling, linking and executing an Enterprise PL/I module.