Foxtable(狐表)用户栏目专家坐堂 → 请教一段事件代码的优化


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

主题:请教一段事件代码的优化

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


加好友 发短信
等级:童狐 帖子:276 积分:2971 威望:0 精华:0 注册:2010/9/20 11:21:00
请教一段事件代码的优化  发帖心情 Post By:2015/10/16 13:32:00 [显示全部帖子]

 

根据帮助指南中独占式编辑的内容,在表的BeforSaveDatarow 中写入以下代码,(代码不能发,只能以图片形式上传)

目的是在保存行之前,如果此行是当前用户编辑的,清除此行的编辑者列内容。<!--?xml:namespace prefix = "o" /-->


 

上述代码执行效率很低。

一个表有3000行数据,全部执行锁定或解锁操作后,保存表时,如果没有上述代码只需2秒;而有上述代码时,用时近2分钟。

请问如何优化?

 


此主题相关图片如下:代码.jpg
按此在新窗口浏览图片


中间的 cmd.C   后面的内容发上不来。
实际就是数据源
    C o n n e c t i o n N a m e  =  "XXxx"



[此贴子已经被作者于2015/10/16 14:08:17编辑过]

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


加好友 发短信
等级:童狐 帖子:276 积分:2971 威望:0 精华:0 注册:2010/9/20 11:21:00
  发帖心情 Post By:2015/10/16 14:16:00 [显示全部帖子]

指南中的解释:

你也许会奇怪,为什么新增行可以直接清空
者列的内容,但其它行要通过Update语句设置?
假定现有一行数据,用户张三双击此行某个单元格开始,系统执行StartEdit事件,将者列的内容设置为“张三”,后台此列的内容也通过Update语句设置为了“张三”,如果此用户在过程中,没有做任何修改,就选择了其他单元格,然后保存,此时如果在BeforeSaveDataRow事件中直接清空者列内容,那么此行所有列的内容和最初完全一样,Foxtable将不会保存此行,所以虽然你清空了者列的内容,但是后台的者列还是“张三”,导致记录被锁死。
这里涉及到Foxtable的保存机制:在保存某行之前,系统会进行一个判断,如果此行所有列内容和最初完全相同,则跳过此行,以提高保存效率。

如何解决指南中提到的问题?
[此贴子已经被作者于2015/10/16 14:24:30编辑过]

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


加好友 发短信
等级:童狐 帖子:276 积分:2971 威望:0 精华:0 注册:2010/9/20 11:21:00
  发帖心情 Post By:2015/10/16 14:31:00 [显示全部帖子]

自己顶啦

 回到顶部