>>>Exactly how does your semaphore technique work? How does it
>>>handle a person that opens a record and just leaves? How do
>>>you handle the user that opens a record and instead of exiting
>>>the program in the proper sequence just turns off his machine
>>>leaving that record open?
>>
>>Because a semaphore does not represent a true locking, those situations will not represent a problem as long as we combine this with a timestamp and allow a certain time to update.
>
>Do you have a way of detecting wether a user is still on the network or not?
We don't need to. We allow a user 12 minutes to update a record. If someone else try to get access to the update mode during that time, we will refuse it. However, the time can be smaller if the user save within the 12 minutes period. If the user save after 12 minutes, than we will only accept it if no one else get the update mode after 12 minutes.