> >SQLSETPROP(nConnectionHandle,'Transactions',2) && enable manual transactions > >LOCAL lbSuccess, laError[1] >lbSuccess = .F. >DO CASE > CASE SQLEXEC(nConnectionHandle,'UPDATE ...') = -1 > CASE SQLEXEC(nConnectionHandle,'UPDATE 2 ..') = -1 > CASE SQLEXEC(nConnectionHandle,'DELETE ...') = -1 > OTHERWISE && will be exectud if all goes well > lbSuccess = .T. >ENDCASE > >IF lbSuccess > IF SQLCOMMIT(nConnectionHandle) = 1 > ? "Transaction commited successful" > ELSE > AERROR(laError) > && handle error here > ENDIF >ELSE > AERROR(laError) && saves error from SQLEXEC > IF SQLROLLBACK(nConnectionHandle) = 1 > ? "unsuccessful transaction rolled back" > ELSE > ? "Error on rolling back transaction" > ENDIF > && handle error here >ENDIF >&& set transaction handling to automatic again >SQLSETPROP(nConnectionHandle,'Transactions',1) >>