Foxtable(狐表)用户栏目专家坐堂 → [求助]表达式运行特别慢


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

主题:[求助]表达式运行特别慢

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


加好友 发短信
等级:幼狐 帖子:86 积分:774 威望:0 精华:0 注册:2024/6/14 17:00:00
[求助]表达式运行特别慢  发帖心情 Post By:2024/12/17 9:24:00 [只看该作者]

蓝版主,请问下,下面公式运行没问题,就是速度太慢,大概有1分钟左右。(原数据2万多条)是我哪儿没写对麽



If e.DataCol.Name = "往来单位名称" OrElse e.DataCol.Name = "项目名称" Then 

    Dim d2 As Date = CDate(Forms("账龄分析").Controls("DateTimePicker1").Value)

    e.DataRow("备抵前应收账款") = DataTables("凭证明细表").Compute("Sum(借方金额)", "一级科目编码 = '1122' And  [项目名称] = '" & e.DataRow("项目名称") & "' And  [往来单位名称] = '" & e.DataRow("往来单位名称") & "'  And  [总账日期]<= #" & d2 & "#   ")

End If

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


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

如果是重置列,2W行也差不多这个时间的。

建议是不要动不动就重置列。如果确实需要经常统计计算几万行的数据,可以使用sql处理吧

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


加好友 发短信
等级:幼狐 帖子:86 积分:774 威望:0 精华:0 注册:2024/6/14 17:00:00
  发帖心情 Post By:2024/12/17 10:05:00 [只看该作者]

好的,感谢哈


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


加好友 发短信
等级:幼狐 帖子:86 积分:774 威望:0 精华:0 注册:2024/6/14 17:00:00
  发帖心情 Post By:2024/12/17 16:39:00 [只看该作者]

蓝版主,在问下,如果我把时间条件删除,数据也是很快就出来,请问下这个是什么原因呢。

加了时间条件,就很慢很慢

[此贴子已经被作者于2024/12/17 16:39:14编辑过]

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


加好友 发短信
等级:超级版主 帖子:111381 积分:566969 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/12/17 16:48:00 [只看该作者]

这个要测试过才知道。方便做个例子发上来看看

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


加好友 发短信
等级:幼狐 帖子:86 积分:774 威望:0 精华:0 注册:2024/6/14 17:00:00
  发帖心情 Post By:2024/12/17 17:30:00 [只看该作者]

我整复杂了,应该多看看论坛
我只是计算账龄,可能是我的代码整得太复杂了。
http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=114373&skin=0
参考了这个页面,整好了,感谢哈
[此贴子已经被作者于2024/12/17 17:30:47编辑过]

 回到顶部