| **Navigation:**  [[introduction.htm|Language Reference]] > 13 - Built-in Functions >====== COMMIT (terminate successful transaction) ====== | [[command return command line .htm|{{btn_prev_n.gif|Previous page}}]][[introduction.htm|{{btn_home_n.gif|Return to chapter overview}}]][[compress.htm|{{btn_next_n.gif|Next page}}]] | | || **COMMIT** {{blk2blue.jpg|blk2blue.jpg}} The **COMMIT** statement terminates an active transaction. Execution of a COMMIT statement assumes that the transaction was completely successful and no ROLLBACK is necessary. Once COMMIT has been executed, ROLLBACK of the transaction is impossible. COMMIT informs the file driver involved in the transaction that the temporary files containing the information necessary to restore the database to its previous state may be deleted. The file driver then performs the actions necessary to its file system to successfully terminate a transaction. **Errors Posted:** | 48 | Unable to Log Transaction | | 91 | No Logout Active | **Example:** ** LOGOUT(1,OrderHeader,OrderDetail)  !Begin Transaction** ** DO ErrHandler                      !always check for errors** ** ADD(OrderHeader)                   !Add Parent record** ** DO ErrHandler                      !always check for errors** ** LOOP X# = 1 TO RECORDS(DetailQue)  !Process stored detail records** **  GET(DetailQue,X#)                 !Get one from the QUEUE** **  DO ErrHandler                     !always check for errors** **  Det:Record = DetailQue            !Assign to record buffer** **  ADD(OrderDetail)                  !and add it to the file** **  DO ErrHandler                     !always check for errors** ** END** ** ****COMMIT****                             !Terminate successful transaction** ** ASSERT(~ERRORCODE())** **ErrHandler ROUTINE                  !Error routine** ** IF NOT ERRORCODE() THEN EXIT.      !Bail out if no error** ** Err" = ERROR()                     !Save the error message** ** ROLLBACK                           !Rollback the aborted transaction** ** ASSERT(~ERRORCODE())** ** BEEP                               !Alert the user** ** MESSAGE('Transaction Error - ' & Err")** ** RETURN                             !and get out** **See Also:** [[logout begin transaction .htm|LOGOUT]] [[rollback terminate unsuccessful transaction .htm|ROLLBACK]]