cbl dll,thread,lib * IDENTIFICATION DIVISION. *----------------------- PROGRAM-ID. PTCOBHLW RECURSIVE. ENVIRONMENT DIVISION. *-------------------- CONFIGURATION SECTION. SPECIAL-NAMES. C01 IS TO-TOP-OF-PAGE. DATA DIVISION. WORKING-STORAGE SECTION. *DB2 TABLE DEFINITIONS EXEC SQL INCLUDE SQLCA END-EXEC. EXEC SQL INCLUDE HELLOWD1 END-EXEC. EXEC SQL INCLUDE HELLOWD2 END-EXEC. EXEC SQL INCLUDE HELLOWD3 END-EXEC. EXEC SQL INCLUDE HELLOWD4 END-EXEC. EXEC SQL INCLUDE HELLOWD5 END-EXEC. EXEC SQL INCLUDE HELLOWD6 END-EXEC. EXEC SQL INCLUDE HELLOWD7 END-EXEC. EXEC SQL INCLUDE HELLOWD8 END-EXEC. EXEC SQL INCLUDE HELLOWD9 END-EXEC. 01 HELLO-OPRNS. 10 HELLO-CHAR PIC X(20). 77 SQL-CODE PIC +99999. 77 SQL-STATE PIC 9(5). 77 SQL-ERRMC PIC X(70). 77 NOT-FOUND PIC S9(9) COMP VALUE +100. COPY JCOB. *-------------------- LINKAGE SECTION. 01 ARGNUM PIC S9(9) BINARY. 01 TABLE-NUM PIC S9(9) BINARY. *-------------------- PROCEDURE DIVISION USING ARGNUM TABLE-NUM. ***************************************************** * SQL RETURN CODE HANDLING * ***************************************************** EXEC SQL WHENEVER SQLERROR GOTO DBERROR END-EXEC. EXEC SQL WHENEVER SQLWARNING GOTO DBERROR END-EXEC. EXEC SQL WHENEVER NOT FOUND CONTINUE END-EXEC. ***************************************************** * MAIN PROGRAM ROUTINE * ***************************************************** PROG-START. MOVE 0 to RETURN-CODE. IF TABLE-NUM = 1 EXEC SQL INSERT INTO JCOB.HELLOWLD01 VALUES ("HELLO WORLD") END-EXEC ELSE IF TABLE-NUM = 2 EXEC SQL INSERT INTO JCOB.HELLOWLD02 VALUES ("HELLO WORLD") END-EXEC ELSE IF TABLE-NUM = 3 EXEC SQL INSERT INTO JCOB.HELLOWLD03 VALUES ("HELLO WORLD") END-EXEC ELSE IF TABLE-NUM = 4 EXEC SQL INSERT INTO JCOB.HELLOWLD04 VALUES ("HELLO WORLD") END-EXEC ELSE IF TABLE-NUM = 5 EXEC SQL INSERT INTO JCOB.HELLOWLD05 VALUES ("HELLO WORLD") END-EXEC ELSE IF TABLE-NUM = 6 EXEC SQL INSERT INTO JCOB.HELLOWLD06 VALUES ("HELLO WORLD") END-EXEC ELSE IF TABLE-NUM = 7 EXEC SQL INSERT INTO JCOB.HELLOWLD07 VALUES ("HELLO WORLD") END-EXEC ELSE IF TABLE-NUM = 8 EXEC SQL INSERT INTO JCOB.HELLOWLD08 VALUES ("HELLO WORLD") END-EXEC ELSE IF TABLE-NUM = 9 EXEC SQL INSERT INTO JCOB.HELLOWLD09 VALUES ("HELLO WORLD") END-EXEC ELSE DISPLAY ARGNUM ": DB2 TABLE: " TABLE-NUM " UNDEFINED" MOVE 8 to RETURN-CODE. PROG-END. GOBACK. ***************************************************** * SQL ERROR OCCURRED - GET ERROR MESSAGE * ***************************************************** DBERROR. MOVE SQLCODE OF SQLCA TO SQL-CODE MOVE SQLSTATE OF SQLCA TO SQL-STATE MOVE SQLERRMC OF SQLCA TO SQL-ERRMC STRING "SQL ERROR, SQL CODE=" SQL-CODE ", SQL STATE=" SQL-STATE ", SQL MSG=" SQL-ERRMC DELIMITED BY SIZE INTO W01-DB2-RESPONSE. DISPLAY ARGNUM ": DB2 RESPONSE: " W01-DB2-RESPONSE UPON CONSOLE. MOVE 8 to RETURN-CODE. GO TO PROG-END.