This code fragment sets the current connection, and inserts data into an Adaptive Server database:
*REMARKS. TRANSACTION-ID IS 'POPS'. *THIS TRANSACTION POPULATES A DATABASE'S DATA TABLE *WITH STOCK DATA ENTRIES. ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. COPY DFHBMSCA. COPY DFHAID. COPY AIXCSET. EXEC SQL INCLUDE SQLCA END-EXEC. 77 RESPONSE PIC 9(8) COMP. 01 MSG-LIST. 02 MSG-1 PIC X(70) VALUE 'Transaction Failed: Unable To Prime Stock' -'Table.'. 02 MSG-2 PIC X(70) VALUE 'Stock Records Added Successfully.'. 01 TRANSFAIL PIC X(70). EXEC SQL BEGIN DECLARE SECTION END-EXEC. 01 STOCK-RECORD. 02 STOCK-NUM PIC X(5). 02 ITEM-DESC PIC X(30). 02 STOCK-QTY PIC X(7). 02 UNIT-PRICE PIC S9(4)V99 VALUE ZEROES. EXEC SQL END DECLARE SECTION END-EXEC. PROCEDURE DIVISION. * CHECK BASIC REQUEST TYPE * IF EIBAID = DFHCLEAR EXEC CICS SEND CONTROL FREEKB END-EXEC EXEC CICS RETURN END-EXEC END-IF. * MAIN PROCESSING *SET UP STOCK RECORD DETAILS AND THEN WRITE OUT *STOCK RECORD. * MOVE '31421'TO STOCK-NUM. MOVE 'Widget (No.7)'TO ITEM-DESC. MOVE '0050035'TO STOCK-QTY. MOVE 25.55 TO UNIT-PRICE. PERFORM WRITE-STOCKREC. MOVE '43567'TO STOCK-NUM. MOVE 'Splunkett ZR-1'TO ITEM-DESC. MOVE '0005782'TO STOCK-QTY. MOVE 143.79 TO UNIT-PRICE. PERFORM WRITE-STOCKREC. EXEC CICS SYNCPOINT RESP(RESPONSE) END-EXEC. IF RESPONSE NOT = DFHRESP(NORMAL) MOVE MSG-1 TO TRANSFAIL PERFORM FAIL-TRANS END-IF. MOVE MSG-2 TO MSGOUTO. EXEC CICS SEND MAP('MSGLINE') MAPSET('AIXCSET') FREEKB END-EXEC. EXEC CICS RETURN END-EXEC. GOBACK. * ATTEMPT TO WRITE OUT NEW STOCK RECORD. * WRITE-STOCKREC. EXEC SQL SET CONNECTION connection_2 END-EXEC IF SQLCODE NOT = 0 MOVE MSG-1 TO TRANSFAIL PERFORM FAIL-TRANS END-IF. EXEC SQL INSERT INTO STOCK VALUES (:STOCK-RECORD) END-EXEC IF SQLCODE NOT = 0 MOVE MSG-1 TO TRANSFAIL PERFORM FAIL-TRANS END-IF. * IF UNABLE TO APPLY CREATE, END TRANSACTION * AND DISPLAY REASON FOR FAILURE. * FAIL-TRANS. MOVE TRANSFAIL TO MSGOUTO EXEC CICS SEND MAP('MSGLINE') MAPSET('AIXCSET') FREEKB END-EXEC EXEC CICS RETURN END-EXEC.