找回密码
 立即注册

QQ登录

只需一步,快速开始

Jessen

注册会员

1

主题

5

帖子

25

积分

注册会员

积分
25
最新发帖
Jessen
注册会员   /  发表于:2016-5-31 14:27  /   查看:3573  /  回复:7
本帖最后由 Lenka.Guo 于 2016-6-1 17:17 编辑

异常信息如图。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

7 个回复

倒序浏览
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-5-31 15:23:33
沙发
您好,


导出Excel报错,可能的原因:

1. 导出 03格式 xls 报错:xls 格式文件行数限制为6万多行,如果超过6万行则会报错;而07xlsx格式是没问题。建议您更换成07格式的。
2. 其他导出格式都正常,如Image,PDf等,有可能是缺少DocumentFormat.OpenXml 引用文件,可手动添加到项目中。



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Jessen
注册会员   /  发表于:2016-5-31 16:29:28
板凳
谢谢你的回复。
可能是我没表述清楚。首先,生成报表的数据量并不多,100多条;其次,当只有两条数据的时候,是可以正常生成报表并导出xls的,说明不是代码缺少引用;然后,就是当我在生成具有100条数据的报表时,report.run是正常的,就是在导出生成xls的时候抛出”out of Memery“异常。
回复 使用道具 举报
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-5-31 18:04:13
地板
Jessen 发表于 2016-5-31 16:29
谢谢你的回复。
可能是我没表述清楚。首先,生成报表的数据量并不多,100多条;其次,当只有两条数据的时 ...

Hi
这个可能就是报表设计的方式不对导致错误,您可以使用报表设计器,在预览界面导出Excel 看看是否会报错,如果仍然报错,则表示是报表设计的问题,如果正常,则表示Excel的导出代码有问题哦。
回复 使用道具 举报
Jessen
注册会员   /  发表于:2016-6-1 11:19:24
5#
Hi,谢谢你的回复。
没看懂你说的,预览界面,没有导出Excel。代码应该是没问题的,因为人数较少的时候是可以导出的,人数较多后就会抛出内存溢出的异常。我用的是AR3版本。
DataDynamics.ActiveReports.Export.Xls.XlsExport对象的Export方法是封装好了的,我们也看不到里面的详细代码。
另外,在DEBUG的时候我有监测WEBDEV.WEBSERVER.EXE进程,当专用内存达到90MB左右的时候,就会抛出异常。
回复 使用道具 举报
Jessen
注册会员   /  发表于:2016-6-1 11:20:57
6#
其实,我想知道的是AR控件自己的问题还是在DEBUG的时候vs Develepment Server的问题。
回复 使用道具 举报
Jessen
注册会员   /  发表于:2016-6-1 11:21:01
7#
其实,我想知道的是AR控件自己的问题还是在DEBUG的时候vs Develepment Server的问题。
回复 使用道具 举报
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-6-1 14:23:09
8#
Jessen 发表于 2016-6-1 11:19
Hi,谢谢你的回复。
没看懂你说的,预览界面,没有导出Excel。代码应该是没问题的,因为人数较少的时候是 ...

不好意思,
之前以为您是使用的是ActiveReports10 版本,所以让您使用它的最终报表设计器,来打开报表,打开之后,预览报表时,最终报表设计器是支持直接导出报表的。

因为AR3是比较老的版本了,无法重现您的问题,无法判断是什么原因导致的。
如果导出代码是封装好,多人同时调用,容易导致内存溢出的错误,建议您在调用导出操作之后,释放内存:

rpt.Document.Dispose()
rpt.Dispose()
rpt=Nothing


回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部