急关于VFP无法锁定表的有关问题

急,关于VFP无法锁定表的问题
    我用视图更新远程数据,为避免多个用户同时对同一远程表进行新增操做,拟先对表进行锁定,如锁定成功,则进行写入;如不成功,则提示错误,代码如下:
sele 2
use ycxr   ;“ycxr”是个远程视图
=flock()
sd1=flock()
if sd1=.f. 
   sele 2
   unlock
   use
   messagebox('其他用户正在提交数据,请稍后再试',16,'错误')
   retu
endif
insert into …..(执行写入)
    但在测试中发现,两个用户同时执行后,并没有提示错误,而是分别在执行写入操作,过来一段时间后,提示“连接错误…无法更新…某某表被某某用户锁定”,执行出错。
    请教问题:1、是否是因为远程视图无法执行flock(),还是写法有问题?
               2、如不行,通过视图更新,有什么方法能达到我的要求吗?
     万分感谢!

------解决方案--------------------
c/s 模式编程不再使用锁表这种 f/s 模式的方法,而是采用检查更新冲突的方法
更新冲突是指:你更新某个记录的字段时,检测到其他用户已更新了这条记录的某些字段
View 和 CursorAadpter 中检测更新冲突的方法是指定 WhereType 属性的值
根据你希望的冲突检测级别,分别可以是:
Key fields only
Key and modified fields
Key and updatable fields
Key and timestamp
1 的严格级别最低,4 最高,通常指定 Key and updatable fields 级别即可满足绝大多数情况
这些帮助文件中都有详细解释,参见 Managing Updates by Using Views 中描述

------解决方案--------------------
请参考下面这个帖子中8-10楼的回复 
http://bbs.****.net/topics/270046060