>Searching a table only discovers data that has been saved to the network, not data still in buffers on individual machines, and the machine_id adds a long string to the ID number that is difficult to read and report.
>
>Why go through all this effort when you can use a lookup table? Just lock the appropriate record, increment the value and unlock the record for someone else to use. Unique, you can use VERY large numbers (I think it's 2 billion) if you use integer-type, and easy to handle.
Machine_id+sys(2015) may be sufficient and may avoid the overhead of many users hitting the lookup table simultaneously. Though, the lookup tables are the safest way to go when you can have them - I'm using this (with a short machine id of only 2 chars) for offline users whose data must get synchronized later. Since I can't be sure if some data may come twice (or it should, if updated), I use this approach. It might be good for slower networks, too.