易表在线答疑技术与交流用户社区 → [原创]请问易表文件运行时怎么会占用98%以上的系统资源呢?


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

主题:[原创]请问易表文件运行时怎么会占用98%以上的系统资源呢?

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


加好友 发短信
等级:超级版主 帖子:13147 积分:-89 威望:0 精华:0 注册:2006/8/11 11:14:00
  发帖心情 Post By:2006/9/29 23:33:00 [显示全部帖子]

可能是定时器引起的吧。

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


加好友 发短信
等级:超级版主 帖子:13147 积分:-89 威望:0 精华:0 注册:2006/8/11 11:14:00
  发帖心情 Post By:2006/9/29 23:36:00 [显示全部帖子]

改成一个定时器,间隔调长一点会有所改观的。

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


加好友 发短信
等级:超级版主 帖子:13147 积分:-89 威望:0 精华:0 注册:2006/8/11 11:14:00
  发帖心情 Post By:2006/9/29 23:55:00 [显示全部帖子]

这个可就不好说了,可能是统计公式比较复杂吧。

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


加好友 发短信
等级:超级版主 帖子:13147 积分:-89 威望:0 精华:0 注册:2006/8/11 11:14:00
  发帖心情 Post By:2006/9/30 0:47:00 [显示全部帖子]

我这里CPU只有8-10。
第二个问题理解不透,从公式看似乎用if判断更适合,如:

if(Number(Format([第二年龄段_生活补助_始领上月],"yyyy-mm") = Format(Today(),"yyyy-mm")) + Number(Format([第二年龄段_生活补助_正常时间],"yyyy-mm") = Format(Today(),"yyyy-mm")) + Number(Format([第二年龄段_养老金_始领上月],"yyyy-mm") = Format(Today(),"yyyy-mm")) + Number(Format([第二年龄段_养老金_正常时间],"yyyy-mm") = Format(Today(),"yyyy-mm")) + Number(Format([第三年龄段_生活补助_始领上月],"yyyy-mm") = Format(Today(),"yyyy-mm")) + Number(Format([第三年龄段_生活补助_正常时间],"yyyy-mm") = Format(Today(),"yyyy-mm")) + Number(Format([第三年龄段_养老金_始领上月],"yyyy-mm") = Format(Today(),"yyyy-mm")) + Number(Format([第三年龄段_养老金_正常时间],"yyyy-mm") = Format(Today(),"yyyy-mm")) + Number(Format([第四年龄段_始领上月],"yyyy-mm") = Format(Today(),"yyyy-mm")) + Number(Format([第四年龄段_正常时间],"yyyy-mm") = Format(Today(),"yyyy-mm"))+ Number(Format([第一年龄段_执行时间],"yyyy-mm") = Format(Today(),"yyyy-mm"))+ Number(Format([社会化发放_启领养老],"yyyy-mm") = Format(Today(),"yyyy-mm"))+ Number(Format([社会化发放_启领生活],"yyyy-mm") = Format(Today(),"yyyy-mm"))=0,"","本月新增")


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


加好友 发短信
等级:超级版主 帖子:13147 积分:-89 威望:0 精华:0 注册:2006/8/11 11:14:00
  发帖心情 Post By:2006/9/30 1:22:00 [显示全部帖子]

true,真;为1,false,假;为0。
当比较公式format([第二年龄段_生活补助_始领上月],"yyyy-mm")等于format(Today(),"yyyy-mm")时,为真,用Number将数据转换为数值型时,即Number(True)=1。
当多个比较值都为false,相加的结果就是0,也就是没有新增的数据。

呵呵,不知我说清楚了没有。


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


加好友 发短信
等级:超级版主 帖子:13147 积分:-89 威望:0 精华:0 注册:2006/8/11 11:14:00
  发帖心情 Post By:2006/9/30 1:31:00 [显示全部帖子]

下面引用由tzszw2006/09/30 01:11am 发表的内容:
此外,在“个人开户”表中,每月执行“生成社会化发放数据”时我需要重算表,速度非常慢,其实我只想重算“个人开户”表中“第一、二、三、四年龄段”和“社会化发放”中列中有关日期型和数值型下级列内容,并不 ...

如果是几个连续的列,可以用RecalcCol重算指定连续列即可,否则只有用And将N个RecalcCol公式来重算指定列了。

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


加好友 发短信
等级:超级版主 帖子:13147 积分:-89 威望:0 精华:0 注册:2006/8/11 11:14:00
  发帖心情 Post By:2006/9/30 1:48:00 [显示全部帖子]

下面引用由tzszw2006/09/30 01:33am 发表的内容:
CZY老师啊,你平时都做哪些方面的程序呀?有空与人合作开发吗?

呵呵,什么程序都不做,也没兴趣搞开发。

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


加好友 发短信
等级:超级版主 帖子:13147 积分:-89 威望:0 精华:0 注册:2006/8/11 11:14:00
  发帖心情 Post By:2006/9/30 1:49:00 [显示全部帖子]

下面引用由tzszw2006/09/30 01:42am 发表的内容:
我的"个人开户"表每月都要重算一次(因为我的"社会化发放"表数据是从"个人开户"表中生动计算生成的,每月看哪些人到达享受待遇的年龄享受多少待遇,或者到达退出享受待遇的年龄,是个动态的,我只能将其计 ...

用N个RecalcCol肯定会比重算全表快的多的多。

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


加好友 发短信
等级:超级版主 帖子:13147 积分:-89 威望:0 精华:0 注册:2006/8/11 11:14:00
  发帖心情 Post By:2006/9/30 23:24:00 [显示全部帖子]

重算“第一年龄段_本月补助”列的按钮公式:
EvalFor(Grid,"第一年龄段_本月补助","if([年龄段_第一]=-1 and today()>=[第一年龄段_执行时间]and today()<=[第一年龄段_终止时间],[待遇标准!生活补助_第一_月发],"""")")

如果你真的搞不懂evalfor的用法,教你一个最笨的办法,先增加一个表达式变量,如%EvalFor%,把原来的刷新公式放到这个变量中,按钮公式只需这样就行:
EvalFor(Grid,"第一年龄段_本月补助","[%EvalFor%]")


 回到顶部