You may notice that the ID of expense report is not generated sequentially according to the entry time. You want to know the logic how the system determines expense report ID.
We have one database where all expense reports are stored. However for load balancing reasons there are 3 application servers that work independently. If user A logs on, system delegates the user to application server 1 and reserves ID 1 - 50. User A creates a new expense report then application server 1 assigns ID #1 to this expense report. In the meantime User B logs on and is delegated to application server 2 and system reserves ID 51 - 100. User B creates an expense report and application server 2 assigns ID #51 to the expense report. Then user C logs on and is delegated to application server 1 (same as user A). User C creates an expense report, and as application server 1 has reserved IDs before, expense report of user C gets ID #2.
In other words, missing IDs does not mean that some expense reports have been deleted. If you see the maximum expense report ID, such as 350, it does not mean there are 350 expense reports in the system either.
KBA , SRD-CC , Cross Components , How To