日期:2014-05-20  浏览次数:20792 次

水晶报表数据量大,导出PDF文件问题
我用C++调用水晶报表的动态库,生成报表。库里有150万条数据。结果调用函数在report_ptr->Export()函数生成PDF报表时,
1个多小时,Export()这一步都没有走下去。

如何才能设置report_ptr->Export(),使导出函数有时间限制,超时会强制关闭呢?

如果只能阻塞生成,那当数据量过大时,会导致程序卡死的。

我用生成RPT文件类型测试过,RPT文件是可以生成的,PDF生成不完。

但如果不用C++调用,只用水晶报表工具直接生成PDF,是可以的

另外,水晶报表支持多大数据量?有限度吗?

------解决方案--------------------
水晶报表支持多大数据量这个理论上没限制,但是实际上是受限于操作系统及系统资源的
一般导出动作的时候,会在临时文件夹生成一个对应的tmp文件,150万条的话这个临时文件可能会有几G吧
如果磁盘空间不足,可能会有卡死
不过你的水晶报表能导的话,一般倒不是这个问题。
我们再BOE上导出的时候,一般是1分钟导5000条左右,超过50万基本上就导不出来了

以上是一些经验,对于150万条的导出我还真没什么很好的办法
如果实在要的话,可以考虑分批导出,最后合并成一个文件
但是理论上说,150万条的细目数据导出pdf貌似意义不大啊,呵呵。。