Foxtable(狐表)用户栏目专家坐堂 → 关于独占式编辑问题


  共有5129人关注过本帖树形打印复制链接

主题:关于独占式编辑问题

帅哥哟,离线,有人找我吗?
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/9 15:54:00 [显示全部帖子]

1、可以实现独占式编辑
2、全局代码:http://www.foxtable.com/webhelp/topics/1842.htm

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/9 16:48:00 [显示全部帖子]

放到2.openQQ服务端的ReceivedMessage事件,不是3.openQQ客户端的事件

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/5/11 10:24:00 [显示全部帖子]

1、如果是在表格里双击打开编辑窗口的就是表格的DoubleClick事件,如果是在其它窗口的按钮里的打开编辑窗口的就是指按钮事件
2、比如 tables("表A.表B").current

[此贴子已经被作者于2020/5/11 10:23:50编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/5/11 10:56:00 [显示全部帖子]

    Dim key As String = "表A"  & ":" & r("_Identify")
     Dim key As String = "表A.表B"  & ":" & r("_Identify")

改为
Dim key As String = "表A"  & ":" & r("_Identify") & "|表A.表B"  & ":" & a("_Identify")

然后服务端分析接收的信息的时候也需要改改,先根据“|”筛分2个表的数据,再逐个判断

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/5/11 13:50:00 [显示全部帖子]

2、在服务端项目的OpenQQ服务端的ReceivedMessage事件加上代码:

Dim msg As String = e.Message
If
 msg.StartsWith("?#"AndAlso msg.EndsWith("#?"Then '收到请求编辑信号
    
Dim Keys As String = msg.SubString(2,msg.Length - 4)

dim v1 as string = "OK"

for each key as string in Keys.split("|")
    If tbrk.Containskey(Key) = False Then 
'
如果无人编辑此行
        tbrk.Add(Key,e.UserName) 
'
登记申请者为此行的编辑者
    ElseIf tbrk(Key) = e.UserName Then 
'
如果申请者就是之前登记的编辑者
    Else 
'
如果之前登记的编辑者为其他人
        e.ReturnValue = tbrk(Key) & 
"
正在编辑此行!" '告知申请者是谁在编辑此行

exit for
    
End If

next

e.ReturnValue v1
ElseIf
 msg.StartsWith("!#"AndAlso msg.EndsWith("#!"Then '收到结束编辑信号
    Dim Keys As String = msg.SubString(2,msg.Length - 4)

for each key as string in Keys.split("|")
    If tbrk.Containskey(Key)  Then
        
tbrk.Remove(Key'从集合中移除此行的编辑登记
    End 
If

nezt
End
 If


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/5/11 14:59:00 [显示全部帖子]

先理解一下split的用法:http://www.foxtable.com/webhelp/topics/0245.htm

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/5/11 15:22:00 [显示全部帖子]

去掉蓝色代码,没有用,多余的。不需要改动

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/6/16 14:13:00 [显示全部帖子]

报什么错?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/6/16 14:15:00 [显示全部帖子]

If tbrk.Containskey(key) = False Then

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/6/16 14:38:00 [显示全部帖子]

tbrk是什么东西来的?

 回到顶部
总数 20 1 2 下一页