New Audit Trail (aka History)

The latest version (20.7.14) is adding new audit trail across all editions. It’s a big improvement over the old one.

  • You can click View on any entry to see exactly what each user has created, updated or deleted.
  • Captures all changes to database including batch operations, bank statement imports, auto-categorization using bank rules, added/removed attachments, find & recode operations, cash/bank account conversions, bulk-creation of pending recurring transactions etc.
  • Ability to undo anything if necessary (e.g. you accidently bulk delete some transanctions, you can simply undo it).
  • Unlimited number of entries (previous audit trail has shown only last 500 entries).

New audit trail is per business and can be accessed using History button in the top-right corner:

image

The implementation is not yet as pretty as I would like but I would like to start collecting feedback on this to make sure I’m moving the right direction.

23 Likes

Audit trail per business is a long waiting, most wanted feature for us and addition of ability to undo anything is awsome feature also. Currently my suggesting is that the first creation of entry no need to show undo button, and value diff on history should show a cleaner view i.e old value and new value with two column. Whatever a really great improvement and we love it. We will test through this feature and will do feedback again. Thank you @lubos.

Looks very interesting and I think it is a capability I may use.
Looking at what it is doing, it is going to collect a lot of data fairly rapidly.
I suspect the issue in the longer term will be meaningful access of the data.

  • Searching within the history screen eg by user or modification type will help

  • Another way would be to have context specific history ie the history shown is filtered depending on what screen the user is looking at when they request history. For example the Summary screen would show all history, the journal entry tab showing less, a journal entry showing very specific information.

I don’t really know what is sensibly achievable, look forward to seeing what it evolves into.

Good start - however the undo is not without problems.

For example, can I create a customer, enter invoices and then in the History undo the Customer Create - the invoices are now posted to a suspense account but maybe it should not allow the Undo

Also,when I Undid the Customer Create - it not only deleted the customer, but the Create Customer entry was deleted as well - I think it should have been kept along with a record of the Undo/Delete

I think that undo in accounting should be used only as an extrema ratio and only after a backup like in batch update.

I still have to update our server edition but I hope that only the administration and authorized people could use it.

@lubos

  1. if you delete an attachment from the transaction and then undo the deletion, the attachment can no longer be opened even though the attachment shows at the bottom of the transaction. i understand this is because the attachment is deleted from the business file. maybe these deleted attachments can be saved in a separate database in the app data folder in case the user needs to restore it.

  2. suggestion to have an option to flush or batch delete the audit trail for administrators (sole users in the case of desktop edition). i have noticed that the audit trail feature adds to the size of the business file.
    image
    notice the size of the backup file i created before updating. the live business file was tested by adding an attachment ~1MB and then deleting it (the db was compacted after deleting the attachment).

  3. in my opinion the History button could list only the audit trail corresponding to the tab the user is presently in. a complete audit trail can be listed only if the user accesses History form the Summary page.

  4. the audit trail could show the type of transaction and also its reference as two columns so that users can search specifically whether a transaction was modified.

Good job @lubos, we have been waiting for this feature. This is great news!
Thank you very much

Suggestions

  1. I like the suggestions people are making above, but in my opinion, I don’t wish for the feature to show history according to the tab the user is currently in. I would want to see every history regardless of which tab I am in.
  2. If a general ledger account is created or changes are made to a general ledger account, it would be nice to have the account code also showing in the history record (I know it shows when you click on view).
  3. If possible, as requested above, if the entry is an update of a transaction, show the amounts (before and after in separate columns)
  4. It would be nice to have transaction references appear as hyperlinks to enable the user to click and view the transaction document right from the historical record.
  5. This 5th point is not necessary but can the history include login and logout (Opening and closing of the app) times of users?

These are long awaiting features we are expecting. Thank you for this.

That capability is already there. You can Search and sort by column headings, just like on other Manager lists.

I agree. After experimenting just a little bit so far, I am troubled by how easy it is to wipe out records. The only thing it is not easy to undo is undoing creation of subsidiary ledgers, like customers. @Joe91 commented about this. Undo creation of a subsidiary ledger and you not only un-create it, you destroy the record that it was ever created.

Yes, so what is the point of being able to undo a deletion of an attachment? Better that undoing deletion of attachments not be permitted. And I do not agree with @sharpdrivetek’s idea about saving deleted attachments somewhere else. Suppose I’ve saved an attachment for a statutorily required 7 years and want to be rid of it. I would not want the program saving it somewhere at that point. Or suppose you attach the wrong file by mistake? You would not want it saved after you’ve corrected your mistake.

This raises permissions issues. Do you want someone whom you have denied permission for bank accounts to be able to go back and see which ones have been created, changed, or transacted in? I think not. To my thinking, you have make access to History match permissions set elsewhere.

Limited Users are not supposed to see history or the Audit Trail. Audit trail is for administrators and Auditors.

1 Like

I would take away the Undo option altogether. If someone want to delete something they use the Edit transaction.

This will show up in the history

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).

For example, History for Settings tab would show changes to anything to do with Settings. History for 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 Undo/Redo function.

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.

No, 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.

3 Likes

This comment made me remember when I requested for a document level history button, where a user with full access could view the history of a document, see here Audit trail Feature suggestion (User History on Documents)

This new feature is great and definitely in the right direction to making Manager a sought after Accounting Software. I appreciate all the inputs others are giving for improvement to the feature. I will enjoy its use for now and post suggestions when they come up. Thanks a lot, @lubos

Ok, I can understand the rationale behind an Undo on batch updates and such like but I feel that having the possibilty of deleting accounting records without any trace can only lead to all sorts of problems down the line - whether with auditors or tax authority.

Yes, storage is cheap, especially from the viewpoint of somebody already paying for access to server farms. But there is more to think about. What about someone who wants to email a backup file to an accountant and runs into an attachment size limit? Likewise, users might need to upload accounting records to attorney’s portals. 5MB limits are fairly common. A few years in business with a modest number of attachments can easily outstrip that.

The backup function will be improved so you can choose what to include in the backup. If you want the smallest database possible, you would backup without emails, history and attachments.

4 Likes

Excellent Idea !

From purely a user interface perspective separate physical buttons are not essential. If could function in an analogous manner to context sensitive help. The button always in the same place but the results depend on what the user is currently doing.

I agree behind the button will be code specific to the current screen.

But separate buttons for each screen could clearly achieve an identical function.

The location of History button is on “business” level within user interface just like Backup button is. This button will give you history over the whole business. Just like backup button gives you backup of the whole business. Contextual history buttons will be elsewhere.

1 Like