Bug allows tracking code to be deleted while in use

My employee just deleted tracking code accidently and I unfortunately don’t have a backup to reverse.

These caused removal of tracking code from invoices/expenses etc and thus not showing up in Profit and loss statement. In addition the tracking exception report isn’t showing the data list without tracking code - which possibly could be a bug.

I want to have developer’s @lubos kind attention to restrict deletion of tracking code by users if data is related to a tracking code and fix the bugs soonest possible. Thanks

I don’t know if this will work. Try recreating the tracking code exactly as it was previously. The data may still be there without being visible. Let us know if that works.

I just tried my idea from previous post. It doesn’t work. I can reproduce this problem, and there does not seem to be a recovery. When the tracking code is deleted, references to it in transactions are also deleted, not just hidden.

I will elevate to bug status.

It may be possible to fix it via the API, or get @lubos to fix it by emailing it to him directly.

My guess is that the transactions still refer to the UUID of that tracking code … the tracking code just doesn’t exist. When you create a new tracking code (even with the same name), it would have a different UUID, and that’s why it still doesn’t work.

I think it would be reversible in some way… just as long as Manager didn’t explicitly remove it from the database record of those transactions (which I suspect is the case … making the data recoverable).

I don’t know. This isn’t like some other things in the program. For example, if you enter a bank transaction as Cleared and enter a date, the mark it Pending, then go back to Cleared, the original clearance date is still there. But if a transaction has a tracking code that is eliminated, the code no longer shows on the transaction, and if the identical code is reinstated, the transaction remains unallocated to a tracking code.

I hear your points. It’s possible the database just doesn’t show it in the interface because it can’t find the record. I will do some testing right now and report back.

UPDATE (@Tut):
I created a transaction with a tracking code in my Northwind sample database:

{
  "Date": "2017-08-09",
  "CashAccount": "250f36d7-b1b2-4a89-ac86-a34e955a3f70",
  "Lines": [
    {
      "Account": "d5e8a2f1-c204-4bfb-8a61-ccedc395a3ca",
      "Amount": 3299.94,
      "TrackingCode": "f433bcf9-a623-4f12-a9c9-3ecc9c75ec1c"
    }
  ],
  "Reference": "1",
  "Payer": "B's Beverages"
}

After deleting that tracking code, the TrackingCode ID remains in place for that transaction record.

The interface shows it as missing, as you said, but it’s really actually still there behind the scenes:
03 am

Luckily, even editing that transaction and saving it doesn’t override the TrackingCode ID! :slight_smile:

So the data can be recovered as I thought. A new tracking code needs to be created with the same UUID as the old one. As long as the new tracking code uses the same UUID as the old one, it will work fine.

The only issue is that @lubos will likely need to make this fix, since there is of course no way to define that internal UUID using the interface.

@raJ - I highly recommend you create a backup immediately, just in case. The one thing that likely will erase the ID is if you manually update that specific tracking code field. Updating other fields (e.g. Payer / Description) seems to be OK.

Hi @lubos any comment on this? I tried to recreate the tracking code exactly the same way it was earlier but did not help it report under profit and loss statement. Please help me on this as I lost tracking data of almost 1.5 years

Send your file to the developer directly - lubos@manager.io - and he may be able to help you.

Tell him:

  • Link to this forum conversation
  • Tell him that a tracking code was deleted by accident, but is still linked against transactions.
  • Request him to see if he can re-create the tracking code
  • To assist him in re-creating it, you should provide details on a few transactions that were using that tracking code. He should be able to look at those transactions in the database directly, and determine what the tracking code UUID was. He will need this UUID to re-create it correctly.

Now, I can’t guarantee that he’ll be able to solve the problem - only he can say that for certain. But I believe there is a very high possibility.

Note: Only send Manager files to email addresses that you can trust. Any email in format xxx@manager.io should be trustworthy, but I would recommend against sending the file elsewhere (e.g. don’t send it to forum users like me directly) due to the sensitive information likely contained within it, unless you are OK with them seeing that information.

I’ve also noticed that there have not been any new Manager releases since around 30th October, so perhaps lubos is currently on holiday at the moment. Try to be patient when waiting for a response, keeping this in mind.

The latest version (17.11.3) won’t allow to delete tracking code if it’s in use.

As for restoring it. @ShaneAU is right. You can use API to add back deleted tracking code. As long as it has the same UUID as the deleted one, it will be restored as if it hasn’t been deleted at all.

Another option would be to create new tracking code and use Tracking Code Exceptions Report to find all transactions without tracking code and re-assign them to new tracking code (probably not viable if this tracking code has been used by too many transactions).

1 Like

Great. Do you know if OP’s file has been corrected? Not clear from your post whether he sent it through to you.

Since you mentioned that it can be fixed via the API … I’m guessing a PUT will do the job. @raJ … I may be able to assist if it still needs to be fixed. You can try the ‘Tracking Code Exceptions Report’ first & let us know here if there are too many to do manually.

Hi guys. Thanks for your cooperation.

I, unfortunately not able to understand what API and UUID means and what I should do. I just tried to recreate the tracking code name exactly the same way it was earlier but it is not helping any ways.

Hi @raJ, I will PM you.