>This tested ok.....
>
>
>TRY
> SET REPROCESS TO 1
> REPLACE status WITH 2 IN ss_io FOR status = 5
>CATCH
> SET REPROCESS TO AUTOMATIC
> MESSAGEBOX("Cannot delete the records at this time..... another user has has one of the records open at this time.... try again later",0+16,"Cannot Delete Records")
>FINALLY
>ENDTRY
>
>SET REPROCESS TO AUTOMATIC
>
>
Adding to Craig's post, I would set the exception in the catch, as the issue with the replace is not unique, it is possible that, for example someone changed the type of status without you knowing it, so you'll keep thinking the problem is about a lock when in fact is something else, something along this lines (or you can make it more complicated by using WHEN for each exception you expect) :
local loException
CATCH TO loException
MESSAGEBOX("Cannot delete the records at this time..... " + loException.Message + ".... try again later",0+16,"Cannot Delete Records")
"The five senses obstruct or deform the apprehension of reality."
Jorge L. Borges?
"Premature optimization is the root of all evil in programming."
Donald Knuth, repeating C. A. R. Hoare
"To die for a religion is easier than to live it absolutely"
Jorge L. Borges