Foxtable(狐表)用户栏目专家坐堂 → 数据量大时,表事件执行很慢


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

主题:数据量大时,表事件执行很慢

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


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

Select Case e.DataCol.Name
    Case "数量"
           Dim t As Date = Date.Now
datatablea("出库明细").replacefor("数量",e.NewValue,"关联列比如出库编号='" & e.DataRow("关联列比如出库编号") & "'")
            MessageBox.Show("用时:" & (date.Now-t).TotalSeconds)
end select

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


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

"出库明细"datacolchanged表事件发上来看看

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


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

代码连环触发呀。。。。数量会更新领用总量,领用总量会触发更新金额,还会重置处方表金额列..........不知道还会不会触发其它的计算,这样明细表所有子行一系列计算下来,不慢才怪。

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


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

表达式列如果也像这样,a表计算b表,b表计算c表,...多个列的关联引用,可能比代码计算还慢。

这情况建议从业务逻辑分析进行解耦,必要时增加(或减少)表格或者冗余的列等,避免过于复杂的关联计算

 回到顶部