水晶报表第一次打印慢问题的解决方法
2011-11-19 10:09
621 查看
公司项目的业务要求用户取文件时需要打印文件确认单,使用水晶报表做了这个功能,但是在打印单子的时候第一次总是很慢,据粗略计算大约要等30秒之后才会进行打印,在网上看了好多,许多人也遇到了一样的问题,在Csdn等一些论坛里,大家多数怀疑两种原因:
(1)有人怀疑是因为可能数据量大或者sql写法的问题让检查,我的数据一般只有1-10条左右,应该不是数据的问题
(2)另一种就是建议换控件,不太想使用第三方的东西,还使用过vs里面自带的控件,但是导出会有些问题,可以使用操作office直接导出到word打印,但是又需要在客户机上安装office
在调试的时候发现第一次打印的时候之所以慢是因为SetDataSource()方法上卡了一会,所以我想到了一个方法来解决这个问题,跟大家分享一下。与其说解决,只是找个投机的方法把这个问题隐藏掉。我不太了解水晶报表具体的加载方法,但是根据调试我怀疑在第一次SetDataSource()方法执行的时候水晶报表会加载一些东西所以会很慢,所以我在程序开始运行的时候天下了下面代码:(code内个东西不好使,直接写了)
1 #region 缓存文件清单
2
3 //为了解决水晶报表第一次打印慢的问题
4 DataTable dt = new DataTable();
5 dt.Columns.Add("temp");
6 //水晶报表对象
7 Forms.Report.RptFileList file = new Forms.Report.RptFileList();
8 file.SetDataSource(dt);
9
#endregion 缓存文件清单
Application.Run(new Forms.frmMain());
看代码很明显,我把这段代码放在了Program.cs中加载主窗体之前,就是让水晶报表程序加载时候就提前加载一次空的DataTable,为的是让水晶报表提前把要加载的东西都提前加载上,这样进入到打印窗体的时候,几乎就是秒打了。。。。也不太会写,希望能对大家的问题有帮助。
(1)有人怀疑是因为可能数据量大或者sql写法的问题让检查,我的数据一般只有1-10条左右,应该不是数据的问题
(2)另一种就是建议换控件,不太想使用第三方的东西,还使用过vs里面自带的控件,但是导出会有些问题,可以使用操作office直接导出到word打印,但是又需要在客户机上安装office
在调试的时候发现第一次打印的时候之所以慢是因为SetDataSource()方法上卡了一会,所以我想到了一个方法来解决这个问题,跟大家分享一下。与其说解决,只是找个投机的方法把这个问题隐藏掉。我不太了解水晶报表具体的加载方法,但是根据调试我怀疑在第一次SetDataSource()方法执行的时候水晶报表会加载一些东西所以会很慢,所以我在程序开始运行的时候天下了下面代码:(code内个东西不好使,直接写了)
1 #region 缓存文件清单
2
3 //为了解决水晶报表第一次打印慢的问题
4 DataTable dt = new DataTable();
5 dt.Columns.Add("temp");
6 //水晶报表对象
7 Forms.Report.RptFileList file = new Forms.Report.RptFileList();
8 file.SetDataSource(dt);
9
#endregion 缓存文件清单
Application.Run(new Forms.frmMain());
看代码很明显,我把这段代码放在了Program.cs中加载主窗体之前,就是让水晶报表程序加载时候就提前加载一次空的DataTable,为的是让水晶报表提前把要加载的东西都提前加载上,这样进入到打印窗体的时候,几乎就是秒打了。。。。也不太会写,希望能对大家的问题有帮助。
相关文章推荐
- 解决水晶报表客户端打印问题的方法
- 关于解决水晶报表打印次数限制的问题
- 【BUG】水晶报表多打印空白页的解决方法
- VS2008 水晶报表 打印对话框无法下载问题的解决办法(转)
- vs2005水晶报表WEB打印问题、加载报表失败。-解决办法
- VS2008 水晶报表 打印对话框无法下载问题的解决办法(转)
- 水晶报表在网站迁移过程中出现的问题及解决方法
- VS2010结合水晶报表实现条码打印发布IIS 客户端不能预览打印问题解决办法
- 【分享】水晶报表多打印空白页的解决方法
- 诡异的问题:Excel做报表打印,莫名在根目录生成快捷方式的解决方法
- 水晶报表使用经验谈1--建立水晶报表第一步及编译最易出现错误的解决方法及报表转换成pdf文档进行打印方法
- 关于水晶报表的分页与打印在.NET程式中无效的解决方法.
- 在做水晶报表时,打印,导航等工具图标全部显示为叉叉的解决方法
- VS2008 水晶报表 打印对话框无法下载问题的解决办法(转)
- 热心的网友帮忙解决水晶报表打印纸张问题
- 水晶报表图片不显示两种问题分析及解决方法
- 【分享】VS200X水晶报表边框效果在WEB页面不连续显示问题解决方法
- 水晶报表第一次加载慢解决方法
- 水晶报表图片不显示两种问题分析及解决方法
- 关于水晶报表中CrystalDecisions.CrystalReports.Engine.LogOnException问题的解决方法