home *** CD-ROM | disk | FTP | other *** search
- *
- * Copyright (C) 1987 by Oracle Corporation
- *
- IDENTIFICATION DIVISION.
- PROGRAM-ID. TESTEXIT.
- ENVIRONMENT DIVISION.
- CONFIGURATION SECTION.
- SOURCE-COMPUTER. IBM-PC.
- OBJECT-COMPUTER. IBM-PC.
- DATA DIVISION.
- WORKING-STORAGE SECTION.
-
- *
- * User exit variables referenced in EXEC SQL or EXEC IAF
- * commands must be declared in a DECLARE section.
- *
- EXEC SQL BEGIN DECLARE SECTION END-EXEC.
-
- 01 ENAME PIC X(30) VALUE SPACES.
- *
- EXEC SQL END DECLARE SECTION END-EXEC.
- *
- *
- * Define symbols used to interface with SQL*Forms
- *
- EXEC SQL INCLUDE SQLCA END-EXEC.
- *
- *
- * Error return variables.
- *
- 01 ERROR-TEXT PIC X(80).
- 01 ERROR-LEN PIC S9(9).
-
- LINKAGE SECTION.
- *
- * String and length containing the user exit name and parameter.
- 01 CMD-LINE PIC X(80).
- 01 CMD-LINE-LEN PIC S9(9) COMP-5.
-
- * String and length for the error message defined in the trigger
- * that invoked the exit.
- 01 ERR-MSG PIC X(80).
- 01 ERR-MSG-LEN PIC S9(9) COMP-5.
-
- * If user exit was invoked from a post-query trigger, 1; else 0.
- 01 IN-QUERY PIC S9(9) COMP-5.
-
- PROCEDURE DIVISION
- USING CMD-LINE CMD-LINE-LEN ERR-MSG ERR-MSG-LEN IN-QUERY.
-
- EXEC SQL WHENEVER SQLERROR GOTO SQL-ERROR END-EXEC.
- EXEC IAF GET EMP.ENAME INTO :ENAME END-EXEC.
-
- IF ENAME = "OATES"
- EXEC IAF PUT EMP.COMMENT
- VALUES ('is a very nice man')
- END-EXEC.
-
- MOVE "EXEC IAF success" TO ERROR-TEXT.
- MOVE 16 TO ERROR-LEN.
- CALL "C_SQLIEM" USING ERROR-TEXT ERROR-LEN.
- MOVE SQL-IAPXIT-SUCCESS TO RETURN-CODE.
- GO TO PRG-EXIT.
-
- *
- * Error exit routine for routine.
- *
- SQL-ERROR.
- MOVE "EXEC IAF error" TO ERROR-TEXT.
- MOVE 14 TO ERROR-LEN.
- CALL "C_SQLIEM" USING ERROR-TEXT ERROR-LEN.
- MOVE SQL-IAPXIT-FAILURE TO RETURN-CODE.
-
- PRG-EXIT.
- EXIT PROGRAM.