I think this is great idea. Smaller
History button could be on every screen as well which would show history relevant to that screen (and sub-screens if applicable).
Settings tab would show changes to anything to do with
Sales Invoices tab would show history for all sales invoices.
History for specific invoice would show history relevant to that invoice only etc.
Currently, the only constrain I have in
Undo is that you can only undo last changes. For example, you can’t undo invoice update if it was updated at later time by someone else. You need to undo their change first. Sure I could add more constraints but then you would find system fighting with you more than you’d like. If you want to undo bunch of stuff, it shouldn’t matter in which order it is done. Or there could be
Maybe undone operations could just become “gray” and you can
Redo them. That way it’s not lost.
Actually, having history in the program, I no longer need these scary warnings to backup before any batch update. Batch update becomes “safe” operation because it can be easily undone. There is global
Find & Recode and global
Find & Merge I’m working on and especially
Find & Merge has potential to change many records with a single click. Having ability to undo is important.
I will fix this today.
The database size should not grow that rapidly. Also storage is cheap. Not a concern but there will be ability to purge history.
Yeah, but single history line can represent change to 1000 items when it comes to batch operations.
In Manager speak, only users having
Full access to business can see history for the business. Users with
Limited access can’t.
Undo is crucial as a foundation for more types of batch operations I’m planning to add. For example,
Find & Merge on tracking codes. You merge two tracking codes into one which can affect thousands of transactions. Takes a few clicks to merge. Shouldn’t take more than a few clicks to unmerge too in case you made a mistake.