Foxtable(狐表)用户栏目专家坐堂 → 多人在同一张表上编辑的并发冲突如何解决?


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

主题:多人在同一张表上编辑的并发冲突如何解决?

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


加好友 发短信
等级:幼狐 帖子:64 积分:677 威望:0 精华:0 注册:2017/9/3 10:55:00
多人在同一张表上编辑的并发冲突如何解决?  发帖心情 Post By:2017/11/24 11:30:00 [只看该作者]

请问如果多人在同一张表上编辑,但是不同的人编辑不同的列,保存时会有并发冲突的情况发生吗?如果有的话该怎么处理呢?
看到帮助里有关于工作流和窗口的处理方法,请问有针对表的吗?应该写在什么表事件里呢?


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


加好友 发短信
等级:超级版主 帖子:105495 积分:536466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/11/24 12:08:00 [只看该作者]

如果不是编辑同一行的数据不会有冲突。如果是同一行的数据看看:http://www.foxtable.com/webhelp/scr/3007.htm

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


加好友 发短信
等级:幼狐 帖子:64 积分:677 威望:0 精华:0 注册:2017/9/3 10:55:00
  发帖心情 Post By:2017/11/24 16:40:00 [只看该作者]

谢谢楼上,我后来没有用openqq而是直接用的老的独占式编辑的处理方式(加一列编辑人)来处理的。父表都没有问题,但是有一个子表用id跟主表做关联的,如果在父表.子表界面录入数据的话,编辑人列并不会记录当前用户的用户名,请问这是为什么呢?
还有这个openqq是如何使用的呢?是不是要建两个项目然后分别发布,一个运行在服务器上,另一个运行在客户端上??

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


加好友 发短信
等级:超级版主 帖子:105495 积分:536466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/11/24 16:59:00 [只看该作者]

你是如何在编辑人列记录当前用户的用户名的?代码贴出来看看

使用openqq只需要增加一个服务端项目运行在服务器上,然后在现有的项目里加上客户端的代码即可。先使用帮助的示例把openqq做通了,理解openqq的用法

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


加好友 发短信
等级:幼狐 帖子:64 积分:677 威望:0 精华:0 注册:2017/9/3 10:55:00
  发帖心情 Post By:2017/11/24 17:09:00 [只看该作者]

我是用全局变量记录的客户端电脑名称。
我这里有四张表:"检验单维护",“生产计划”“零料关系表”和“零料出库表”。其中生产计划和零料出库表是父子表的关系,用生产计划的ID列做的关联。
因为生产计划ID列是主键,其他的用的默认的_Identify,所以我用select case对表名做了判断。
现在的情况是我在表里面编辑“编辑人“都会更新为电脑名称,但是如果在生产计划的关联表(生产计划.零料出库表)里面进行编辑时,编辑人列不会变化。
代码如下,非常感谢
代码好像贴不上来,我上传了
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:新建文本文档 (5).txt

txt

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


加好友 发短信
等级:超级版主 帖子:105495 积分:536466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/11/24 17:19:00 [只看该作者]

ID列类型是字符型还是整型?

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/11/24 17:27:00 [只看该作者]

以下是引用haige在2017/11/24 17:09:00的发言:
 
 
现在的情况是我在表里面编辑“编辑人“都会更新为电脑名称,但是如果在生产计划的关联表(生产计划.零料出库表)里面进行编辑时,编辑人列不会变化。
 

 

你要判断表名,应该这样写

 

Dim s As String = e.Table.DataTable.Name
Select Case s
    Case "检验单维护","零料关系表","零料出库表"


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


加好友 发短信
等级:幼狐 帖子:64 积分:677 威望:0 精华:0 注册:2017/9/3 10:55:00
  发帖心情 Post By:2017/11/25 12:05:00 [只看该作者]

原来如此!非常感谢~~

 回到顶部