       IDENTIFICATION DIVISION.
       PROGRAM-ID. CUSTAPI.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT CUSTOMER-FILE ASSIGN TO 'PROD.CUSTOMER.MASTER'
              ORGANIZATION IS INDEXED
              ACCESS MODE IS DYNAMIC
              RECORD KEY IS CUSTOMER-ID.
       DATA DIVISION.
       FILE SECTION.
       FD  CUSTOMER-FILE.
       01  CUSTOMER-RECORD.
           COPY CUSTOMER-ACCOUNT-RECORD.
       WORKING-STORAGE SECTION.
       01  WS-RETURN-CODE           PIC S9(4) COMP.
       01  WS-SQLCODE               PIC S9(9) COMP.
       01  WS-DB2-CUSTOMER-ID       PIC X(12).
       01  WS-API-TRACE-ID          PIC X(36).
       01  WS-COUNTER               PIC 9(4) COMP.
       01  WS-ERROR-FLAG            PIC X VALUE 'N'.
       01  WS-CUSTOMER-REQUEST.
           COPY CUSTOMER-REQUEST.
       01  WS-CUSTOMER-RESPONSE.
           COPY CUSTOMER-RESPONSE.
       LINKAGE SECTION.
       01  DFHCOMMAREA.
           COPY CUSTOMER-REQUEST.
       PROCEDURE DIVISION.
       MAIN-LOGIC.
           EXEC CICS LINK
                PROGRAM('CUSTVALD')
                COMMAREA(DFHCOMMAREA)
                LENGTH(32500)
           END-EXEC.

           EXEC SQL
                DECLARE CUSTCUR CURSOR FOR
                SELECT CUSTOMER_ID, CUSTOMER_NAME, ACCOUNT_BALANCE
                FROM PRODDB.CUSTOMER
                WHERE CUSTOMER_ID = :WS-DB2-CUSTOMER-ID
           END-EXEC.

           EXEC SQL
                OPEN CUSTCUR
           END-EXEC.

           PERFORM READ-CUSTOMER.
           PERFORM BUILD-RESPONSE.
           GOBACK.

       READ-CUSTOMER.
           EXEC SQL
                FETCH CUSTCUR
                INTO :WS-DB2-CUSTOMER-ID,
                     :CR-CUSTOMER-NAME,
                     :CR-ACCOUNT-BALANCE
           END-EXEC.
           IF WS-SQLCODE NOT = 0
              MOVE 'Y' TO WS-ERROR-FLAG
           END-IF.

       BUILD-RESPONSE.
           MOVE CR-CUSTOMER-ID TO RESP-CUSTOMER-ID.
           MOVE CR-CUSTOMER-NAME TO RESP-CUSTOMER-NAME.
