以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 求助:重置列太慢 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=84406) |
-- 作者:刘异 -- 发布时间:2016/4/30 12:24:00 -- 求助:重置列太慢 老师:五一好! 表中几乎全是跨表引用,和跨表统计的,分页加载每页十五行,点击刷新按钮,刷新按钮代码为:重置列代码,发现重置一页要半分钟。 有没有更好的办法呢? 多谢
|
-- 作者:Hyphen -- 发布时间:2016/4/30 14:07:00 -- 统计数据建议还是用统计表来做http://www.foxtable.com/help/topics/2314.htm 或者利用用sql生成查询表http://www.foxtable.com/help/topics/2307.htm
|
-- 作者:rjh4078 -- 发布时间:2016/4/30 14:07:00 -- 能用sql的还是用sql吧 瞬间完成 |
-- 作者:刘异 -- 发布时间:2016/4/30 15:13:00 -- 查询表好像不能修改和引用的,哎! |
-- 作者:Hyphen -- 发布时间:2016/4/30 16:04:00 -- 引用没有问题 把统计和修改混为一体,本身逻辑就有问题
|
-- 作者:刘异 -- 发布时间:2016/5/2 12:00:00 -- 重置一行要6秒多,分页加载5行重置需要32秒; 我不知道用查询表怎么做,因为表与表之间都是需要用到相互之间的平均值呀,合计值呀,汇总,行数值等 |
-- 作者:rjh4078 -- 发布时间:2016/5/2 12:39:00 -- sql 可以做直接统计的啊 我最长的sql统计代码有20多行 |
-- 作者:大红袍 -- 发布时间:2016/5/2 14:14:00 -- 以下是引用刘异在2016/4/30 12:24:00的发言:
老师:五一好! 表中几乎全是跨表引用,和跨表统计的,分页加载每页十五行,点击刷新按钮,刷新按钮代码为:重置列代码,发现重置一页要半分钟。 有没有更好的办法呢? 多谢
你是不是在DataColChanged事件写了sqlFind、sqlCompute之类的代码?这样肯定慢。
建议你单独写一个按钮,先把需要的数据加载出来,在find和compute。 |
-- 作者:刘异 -- 发布时间:2016/5/2 22:52:00 -- Select Case e.DataCol.Name 老师好:ACC数据源,像这样的跨表统计,可不可以用SQL进行统计呢? |
-- 作者:Hyphen -- 发布时间:2016/5/3 9:03:00 -- 这样每一行都会重复计算5次,效率非常低,至少也要加上非空的判断。 建议还是早Access中创建一个统计查询,通过查询表获取统计消息,然后不要在DataColChanged做,而是加载完毕后再查询统计赋值 |