Thanks for the suggestions. Something like this would try a max of 5 times with a short random delay between tries. I'm still not doing anything about it if it eventually fails, but I assume this would cut that probability down considerably.
I'm not using a back end database right now. I wonder how hard it might be to put just this audit table into SQL Server. Could that problem be avoided by doing that?
Declare Sleep IN Win32API;
INTEGER dwMilliseconds
Local i, loError
loError = .F.
For i = 1 To 5
Try
Insert Into Auditlog_sys ;
Catch
loError = .T.
Sleep(Rand()*50+10)
Endtry
If !loError
Exit
Endif
Endfor
Jim Newsom
IT Director, ICG Inc.