Preventing duplicate transaction numbers in NetSuite

By - December 13, 2016

It seems simple enough – you want every transaction to have a unique transaction number. So, you go to your NetSuite configuration, setup your auto-numbering, and check this requirement off the list. Then, at some point during testing or after you go live, you run across two transactions with the same ID. You look at the system logs thinking they might have been created at the exact same time – and they were created around the same time but not exactly. In this post, we will be using POs as our example, but the same issue can crop up with any record where you have both auto-numbering and Allow Override turned on.

duplicate

What happened?

First, back to our original setup for auto-numbering.

setup1setup2
In this example, we have set a document prefix and since we are importing POs as part of go-live, we have left Allow Override checked so that we can import legacy POs using our existing PO numbers.

Once we are live, that checkbox is our downfall. Here is an example of a new PO being created with the Allow Override checked. You can see it has a PO number generated and looks correct. However, the key is in that PO number that is showing on the screen. It is generated when the new PO is first loaded on the screen, but the PO hasn’t been saved to the database so that number still is available. If another user goes to create a PO before you save this one, it will be assigned that same PO number.

header_duplicate

Solution

Let’s uncheck the Allow Override option since we are done importing legacy data and want NetSuite to generate all of our PO numbers. Now, when we create a PO, instead of have a PO number you will see “To Be Generated” in that field. The PO number isn’t generated now until the record is written to the database, which prevents duplicates transaction numbers from being created.

header_to_be_generated

NetSuite is incredibly flexible and configurable. Most days, that is one of NetSuite’s best traits. Unfortunately, it also means that you need an understanding of not just what the configuration options are, but how they interact with each other.

RSM is the #1 solution provider of ERP and CRM systems for the middle-market. RSM helps companies evaluate, select and implement the best ERP solutions available and was recently recognized as the 2016 worldwide solution provider of the year by NetSuite. To contact RSM with questions related to this post or any others related to NetSuite, please can reach out via email at erp@rsmus.com or by phone at 855.437.7202.

By: Steve Kemler – Pennsylvania NetSuite Solution Provider

Receive Posts by Email

Subscribe and receive notifications of new posts by email.