以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 项目打开速度慢 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=178283) |
-- 作者:18920118515 -- 发布时间:2022/6/28 9:45:00 -- 项目打开速度慢 Syscmd.Project.Update(False,True)\'自动升级 If Syscmd.Project.Update(False,False) = False Then \'如果没有升级 Forms("主窗口").Show() Forms("主窗口").Controls("Label2").text = "正在重置[商品车库存]的数据" DataTables("商品车库存基础表").DataCols("生产日期").RaiseDataColChanged() DataTables("商品车库存基础表").DataCols("入库日期").RaiseDataColChanged() DataTables("商品车库存基础表").DataCols("资源匹配日期").RaiseDataColChanged() DataTables("商品车库存基础表").DataCols("资源匹配后到车日期").RaiseDataColChanged() DataTables("商品车库存基础表").DataCols("关联索引列").RaiseDataColChanged() Forms("主窗口").Controls("Label2").text = "正在重置[商品车销售]的数据" DataTables("商品车销售基础表").DataCols("关联索引列").RaiseDataColChanged() DataTables("商品车销售基础表").DataCols("关联索引二列").RaiseDataColChanged() DataTables("商品车销售基础表").DataCols("在保客户实际保险止期").RaiseDataColChanged() \'重新计算天数 DataTables("商品车销售基础表").DataCols("脱保客户预计保险止期").RaiseDataColChanged() \'重新计算天数 Forms("主窗口").Controls("Label2").text = "正在重置[保险明细]的数据" DataTables("保险明细表").DataCols("关联索引二列").RaiseDataColChanged() Forms("主窗口").Controls("Label2").text = "正在保存数据" DataTables("商品车库存基础表").save() DataTables("商品车销售基础表").save() Forms("主窗口").Controls("Label2").text = "" StatusBar.Message3 = Date.Today & " " & User.Name 老师,以上代码,在打开项目的时候,输入用户名和密码,屏幕要等待很长时间才会出现主窗口,但是上边这段代码我想实现:以最短的时间打开主窗口,再将运行过程描述体现在主窗口的Label2控件上,但是,运行结果不是希望的这样,您给指导一下,或者有什么更好的建议可以提升项目打开速度的吗 |
-- 作者:有点蓝 -- 发布时间:2022/6/28 9:51:00 -- 首先,AfterOpenProject事件没有执行完毕,是看不到任何窗口的(这个事件打开的模式窗口除非)。 其次升级代码重复了,去掉第一句【Syscmd.Project.Update(False,True)\'自动升级】 如果要先显示窗口,建一个计划管理,间隔200毫秒,把处理和显示的代码放到计划管理里执行,然后加上doevent(http://www.foxtable.com/webhelp/topics/1476.htm) 计划1 Forms("主窗口").Controls("Label2").text = "正在重置[商品车库存]的数据" Application.DoEvents DataTables("商品车库存基础表").DataCols("生产日期").RaiseDataColChanged() DataTables("商品车库存基础表").DataCols("入库日期").RaiseDataColChanged() DataTables("商品车库存基础表").DataCols("资源匹配日期").RaiseDataColChanged() DataTables("商品车库存基础表").DataCols("资源匹配后到车日期").RaiseDataColChanged() DataTables("商品车库存基础表").DataCols("关联索引列").RaiseDataColChanged() Forms("主窗口").Controls("Label2").text = "正在重置[商品车销售]的数据" Application.DoEvents DataTables("商品车销售基础表").DataCols("关联索引列").RaiseDataColChanged() DataTables("商品车销售基础表").DataCols("关联索引二列").RaiseDataColChanged() DataTables("商品车销售基础表").DataCols("在保客户实际保险止期").RaiseDataColChanged() \'重新计算天数 DataTables("商品车销售基础表").DataCols("脱保客户预计保险止期").RaiseDataColChanged() \'重新计算天数 Forms("主窗口").Controls("Label2").text = "正在重置[保险明细]的数据" Application.DoEvents DataTables("保险明细表").DataCols("关联索引二列").RaiseDataColChanged() Forms("主窗口").Controls("Label2").text = "正在保存数据" Application.DoEvents DataTables("商品车库存基础表").save() DataTables("商品车销售基础表").save() Forms("主窗口").Controls("Label2").text = "" Application.DoEvents AfterOpenProject事件 If Syscmd.Project.Update(False,False) = False Then \'如果没有升级 Forms("主窗口").Show() endif |
-- 作者:18920118515 -- 发布时间:2022/6/28 9:55:00 -- 谢谢老师,太感谢了 |
-- 作者:18920118515 -- 发布时间:2022/6/28 10:19:00 -- 老师,项目打开报错,然后强行退出,请问如何进入项目的编辑状态 |
-- 作者:有点蓝 -- 发布时间:2022/6/28 10:33:00 -- 参考:http://www.foxtable.com/webhelp/topics/1057.htm |