LKSYS( ) example
The following function is used to lock individual records. If it fails, it uses LKSYS( ) to display information on who has the lock and when they got it. SET REPROCESS must be changed to 1 instead of 0 so that if the lock attempt fails the standard dialog, which does not have as much information, will not be displayed.
PROCEDURE RecLock
local cMsg
do while .t.
if rlock( )
return .t.
else
cMsg = "Locked by: " + lksys(2) + chr(13) + ;
"since: " + lksys(1) + " " + lksys(0)
if msgbox( cMsg, "Record is locked by another", 5 + 48 ) == 2
return .f.
endif
endif
enddo
The MSGBOX( ) used is a Retry/Cancel dialog box. The button number, which MSGBOX( ) returns, is 2 if the Cancel button is clicked or the user presses Esc.