>>I don't think I'm asking for unlimited undo. Every app I've ever used has a save/cancel button and I expect cancel to undo any changes. To have it do anything else would be unheard of IMO.
>
>It certainly sounded like you wanted unlimited undo. I still think you need to explain more about what is happening. At this point I'm guessing that you're editing a record, your not saving it, you edit it again, cancel and the original value is lost? IF so, are your sure you are using table buffering and not record buffering?
I think the idea is more like MS Word functionality of REDO. In other words, you make changes, then make more changes, when you press Cancel (Redo) you want to go to the previous changes and not to the state of the previously saved record. So, table buffering would not solve that kind of problem.
You would need to keep the current state and the previous edition state in two variables to implement this kind of Undo. It is possible and not even too hard to write.
If it's not broken, fix it until it is.
My Blog