>The only error message about the corupted index I get
>(on a stand alone machine as well) is 'CIDauct' has been
>corrupted" then I am presented with an option to 'revert'.
Assuming that the actual error you are getting is "Uniqueness of 'index' is violated", what could be happening here is that you have a blank record in your data somewhere, and that you are inserting another one. Your code doesn't actually seem to be doing this, but fwiw...
Also, have you confirmed that the value that's being inserted is actually the value that you think is being used?
How does that function compute the next number? Might the data have gotten corrupted so that it's picking up an earlier number than it should be?