If I am following, this duplicates the information in companies.client_code_increment, in that they both return the last non-user code. Of course this assumes, as David mentioned, that the client is not using a numeric code system. Then you are left trying to figure whether a number is 'your' number or 'their' number?
The customer can add any value into users.code:
code CHARACTER VARYING,
But he also can let it blank/null if he wants to.
That's when the trigger do its job.. Put a value (starting in 1000) in that column.
Of course that has to be unique, as nobody can use the same value of others.
- I was hoping you cans could help me to start doing the function...