找回密码
 立即注册

QQ登录

只需一步,快速开始

lunew

初级会员

38

主题

135

帖子

385

积分

初级会员

积分
385
lunew
初级会员   /  发表于:2016-7-28 15:54  /   查看:4879  /  回复:9
本帖最后由 Lenka.Guo 于 2016-7-29 09:30 编辑

就是普通的table,10列左右的数据,超过5000条就无法导出Excel
数据超过5000是非常常见的,导出到excel之后再加工分析很常用
AR版本是10.1.7292.0

这个对我们很重要,请尽快查一下,谢谢!

9 个回复

倒序浏览
lunew
初级会员   /  发表于:2016-7-28 16:11:09
沙发
附件为用到的数据和文件。

本帖子中包含更多资源

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

x
回复 使用道具 举报
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-7-28 18:13:40
板凳
本帖最后由 Lenka.Guo 于 2016-7-29 09:26 编辑
lunew 发表于 2016-7-28 16:11
附件为用到的数据和文件。

您好,谢谢您的反馈。
经过测试,将报表导出为XLS 格式是正常的, 而选择导出XLSX格式导出报以下异常,已将该问题反馈给产品组:

  1. 错误明细:
  2. GrapeCity.ActiveReports.ReportException: 发生了一个意外错误。更多信息: '“”(十六进制值 0x1A)是无效的字符。' ---> System.ArgumentException: “”(十六进制值 0x1A)是无效的字符。
  3.    在 System.Xml.XmlUtf8RawTextWriter.InvalidXmlChar(Int32 ch, Byte* pDst, Boolean entitize)
  4.    在 System.Xml.XmlUtf8RawTextWriter.WriteElementTextBlock(Char* pSrc, Char* pSrcEnd)
  5.    在 System.Xml.XmlUtf8RawTextWriter.WriteString(String text)
  6.    在 System.Xml.XmlWellFormedWriter.WriteString(String text)
  7.    在 DocumentFormat.OpenXml.OpenXmlLeafTextElement.WriteContentTo(XmlWriter w)
  8.    在 DocumentFormat.OpenXml.OpenXmlElement.WriteTo(XmlWriter xmlWriter)
  9.    在 DocumentFormat.OpenXml.OpenXmlCompositeElement.WriteContentTo(XmlWriter w)
  10.    在 DocumentFormat.OpenXml.OpenXmlElement.WriteTo(XmlWriter xmlWriter)
  11.    在 DocumentFormat.OpenXml.OpenXmlCompositeElement.WriteContentTo(XmlWriter w)
复制代码



回复 使用道具 举报
lunew
初级会员   /  发表于:2016-8-2 10:33:48
地板
hi, 现在这个问题处理得怎么样,能很快修复么
回复 使用道具 举报
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-8-2 12:10:00
5#
lunew 发表于 2016-8-2 10:33
hi, 现在这个问题处理得怎么样,能很快修复么

已经和研发组沟通,产生问题的原因是xml 流问题,包含非法的xml字符.xlsx字符串是通过打开xmL sdk 执行的,所以导致这个问题,解决方法正在与产品组沟通。
回复 使用道具 举报
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-8-2 14:39:35
6#
通过调查发现是记录第 4045 和4047包含特殊字符,如图,导致导出xlsx文件报错; 删除就可正常导出



本帖子中包含更多资源

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

x
回复 使用道具 举报
lunew
初级会员   /  发表于:2016-8-4 10:06:22
7#
本帖最后由 lunew 于 2016-8-4 11:05 编辑

这是用户录入数据时产生的,而且数据来源是其他的系统,我们不能控制,后面还可能再次出现的
都有哪些特殊字符会导致这样的问题呢,能在产品级别直接过滤掉吗
回复 使用道具 举报
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-8-4 11:08:49
8#
首先AR是从数据库中将数据取出来,与数据库的数据是保持一致的,无法执行过滤。
这些非法字符是导出为xlsx文件时,无法通过xml 的文件流,导致的错误。所以非法字符主要看xml sdk中对非法字符的定义,然后从业务逻辑中控制和过滤,在网上搜索了一些资料,供您了解:http://blog.csdn.net/a_heng/article/details/5287390http://blog.csdn.net/cserchen/article/details/5792886


回复 使用道具 举报
lunew
初级会员   /  发表于:2016-8-4 14:26:20
9#
好的我再看看,谢谢
回复 使用道具 举报
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-8-4 15:25:51
10#
lunew 发表于 2016-8-4 14:26
好的我再看看,谢谢

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