以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 调用word报表模板非常之慢 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=141854) |
-- 作者:xiaoqiwei -- 发布时间:2019/10/12 16:09:00 -- 调用word报表模板非常之慢 调用word报表模板非常之慢,起码要几十秒甚至1分钟左右,这样的效率实在不行,有其他比较快的方法 |
-- 作者:有点蓝 -- 发布时间:2019/10/12 16:14:00 -- 数据很多?有没有可以测试的例子? 不过word貌似本来就不快。我有时候打开一个空word文件都很慢,更何况调用组件操作word文档。或者可以考虑换其他报表模式
|
-- 作者:xiaoqiwei -- 发布时间:2019/10/12 16:25:00 -- 数据并不多,是直接调用模板的这个期间慢,生成数据时还是挺快的 |
-- 作者:有点蓝 -- 发布时间:2019/10/12 16:35:00 -- 关闭杀毒软件试试。多试几台电脑,如果都这样,这就没有办法了。 调用模板也就是调用office的com组件打开文件而已,没有什么复杂的过程。word模板有没有什么特殊的应用,比如vba或者控件之类的?另外不要使用wps编辑word模板
|
-- 作者:xiaoqiwei -- 发布时间:2019/10/12 18:08:00 -- Dim wrt As New WordReport(Tables("出库"),tm,fl) \'定义一个WordReport
主要是执行这句代码时慢
用 微软的Office 2007 [此贴子已经被作者于2019/10/12 18:08:19编辑过]
|
-- 作者:有点蓝 -- 发布时间:2019/10/13 21:05:00 -- 我测试第一次Output.Show5秒钟。方便把您的word模板发上来测试一下 Dim d As Date= Date.Now Dim tm As String = ProjectPath & "Attachments\\出库单.doc" \'指定模板文件 Dim fl As String = ProjectPath & "Reports\\出库单.doc" \'指定目标文件 Dim wrt As New WordReport(Tables("出库"),tm,fl) \'定义一个WordReport Dim tp As TimeSpan = Date.Now - d Output.Show(tp.TotalSeconds) wrt.Build() \'逐行生成报表 wrt.Show() \'显示报表 tp = Date.Now - d Output.Show(tp.TotalSeconds) |