So you are saying they opened a dataview, then changed something, saved it in that form (and thereby closed it), then re-opened and pressed cancel and got their old data back? Doesn't sound like something that should happen.
I think cancel is supposed to make things roll back. An alternative would be close, that doesn't rollback anything iirc.