I just started to read 'Effective techniques...' - better late than never :) - and liked your enthusiasm for views. I thought I can trick VFP and do transactions on free tables via views. However ROLLBACK did not revert the successful TABLEUPDATE(table1) when TABLEUPDATE(table2) failed… I guess you can’t do that (transactions on free tables via views) ?