commit transaction 请求没有对应的 BEGIN TRANSACTION,该如何解决

commit transaction 请求没有对应的 BEGIN TRANSACTION
if sqlca.sqlcode<0 then
messagebox("错误","系统更新失败"+SQLCA.SQLERRTEXT)
ROLLBACK USING SQLCA;
return
else
if dw_2.rowcount( )>0 then
COMMIT USING SQLCA;
messagebox("提示","出仓操作成功"+SQLCA.SQLERRTEXT)
end if 
end if  

有时会提示 出仓操作成功 commit transaction 请求没有对应的 BEGIN TRANSACTION


------解决方案--------------------
if dw_2.update()=1 then
commit;
messagebox("提示","出仓操作成功"+SQLCA.SQLERRTEXT)

else
rollback;
messagebox("错误","系统更新失败"+SQLCA.SQLERRTEXT)
end if