Error Code #301 from the Get(LastError) function is that the record is in use by another user.
If you had a script that changed something inconsequential (like a field you put there to be inconsequential), had the script change it, then did a commit record...getting Error 301 would show this.
If you did a triggered script on Record Load, you could trap the error, look for that error code, and set a flag field for "in use".
Just thinking out loud...
You can use:
Set Error Capture [on]
Open Record / request
If [ Get ( LastError )
to detect whether another user already has the record open for editing. This will also "capture" the record so that others cannot edit it until you commit the record.