以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]如何每天0点定时重置列?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=131134)

--  作者:lunengcheng
--  发布时间:2019/2/18 14:16:00
--  [求助]如何每天0点定时重置列?
各位老师前辈好,我现在有一个窗口和表,这个表的列数据是根据其它别的表计算结果生成的,比如明细数量这一列,是通过统计当前记录的明细记录数量生成的,因为明细数量每天都在增加,现在希望设置一个定时更新的功能,比如每天晚上0点自动更新,这样第二天大家一上班,就可以看到最新的数据了,现在有几个问题,希望老师们能解答一下,数据采用的是sql远程数据:

1.重置列的代码要放置在什么位置,放置在窗口的afterload是可以重置的,但是打开窗口需要等待太长的时间,这也是要放到晚上再自动重置的原因;

2.除了重置列之外,是否有其它更高效率的方法可以达到类似的效果,(列的值的计算都是放在DataColChanged里计算)。

多谢了!
[此贴子已经被作者于2019/2/18 14:23:31编辑过]

--  作者:有点蓝
--  发布时间:2019/2/18 14:58:00
--  
新建一个项目,把计算的代码放到计划管理中,定时半夜进行计算。把这个项目放到服务器24小时运行。
--  作者:lunengcheng
--  发布时间:2019/2/18 15:10:00
--  
这个思路明白,那定时在0点执行代码怎么写,这个有没有参考的代码,搜索论坛没找到确却的?
--  作者:有点蓝
--  发布时间:2019/2/18 16:16:00
--  
例如,把计时间隔设置为10分钟

Dim dNow As Date = Date.Now
If dNow.Hour = 0 AndAlso Format(s_TaskDate,"yyyyMMddHH") <> Format(dNow,"yyyyMMddHH") Then
    s_TaskDate = Date.Now
   ‘计算代码
enn if

s_TaskDate是一个全局的日期变量