877121273 发表于 2016-10-20 16:07:33

查询数据量大时报错

本帖最后由 Lenka.Guo 于 2016-10-20 17:11 编辑

An unexpected error occured. Additional information: 'Failed to allocate a managed memory buffer of 536870912 bytes. The amount of available memory may be low.'   运行报表时查看资源管理器内存只占用到了最多16g,而本机内存是32g,请问什么原因呢?

Lenka.Guo 发表于 2016-10-20 17:11:35

刚直接连数据库,大概生成多少页的报表以及数据库里面数据量是多少?您把报表模板可以上传一份吗?

877121273 发表于 2016-10-20 17:27:10

直接连接数据库,可以拿到数据

Lenka.Guo 发表于 2016-10-20 17:49:48

本帖最后由 Lenka.Guo 于 2016-10-20 18:05 编辑

您好
您的数据量确实非常大,将近15000多页报表,数据量比较大,在浏览器端加载如此大的数据量很容易出现内存溢出等问题。建议不要一次性加载全部数据,分次加载。

877121273 发表于 2016-10-20 17:55:06

ar可以不要一次性加载完所有数据吗?看一页再加载一页可以吗

Lenka.Guo 发表于 2016-10-20 18:24:29

877121273 发表于 2016-10-20 17:55
ar可以不要一次性加载完所有数据吗?看一页再加载一页可以吗

需要自定义报表服务文件和实现页码功能,实现相对复杂。
您可以参考示例:

877121273 发表于 2016-10-21 09:58:06

网页报了内存溢出的错误,ar网站的应用池使用的是32位,ar的应用池不可以设置成64位吗?

Lenka.Guo 发表于 2016-10-21 10:41:48

877121273 发表于 2016-10-21 09:58
网页报了内存溢出的错误,ar网站的应用池使用的是32位,ar的应用池不可以设置成64位吗?

您好,如电话沟通
部署64位,需要修改Web.config文件,具体修改情况参考帖子,注意修改AR的版本号: http://gcdn.gcpowertools.com.cn/forum.php?mod=viewthread&tid=17816&highlight=64%CE%BB

877121273 发表于 2016-10-21 11:49:02

对比了32位和64位,配置文件的区别只有在64位的preCondition的值多了个,bitness64,可是修改以后这样,还需要设置什么吗?



<handlers>
      <add verb="*" path="*.asmx" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" name="AsmxHandler" resourceType="Unspecified" preCondition="integratedMode" />
      <add verb="*" path="*.ar10" type="GrapeCity.ActiveReports.Web.Handlers.ReportBinariesStreamer, GrapeCity.ActiveReports.Web.v10, Version=10.0.5627.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" name="AR10_ReportBinariesStreamer" resourceType="Unspecified" preCondition="integratedMode,bitness64" />
      <add verb="*" path="*.ActiveReport" type="GrapeCity.ActiveReports.Web.Handlers.CompiledReportHandler, GrapeCity.ActiveReports.Web.v10, Version=10.0.5627.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" name="AR10_CompiledReportHandler" resourceType="Unspecified" preCondition="integratedMode,bitness64" />
      <add verb="*" path="*.rpx" type="GrapeCity.ActiveReports.Web.Handlers.RpxHandler, GrapeCity.ActiveReports.Web.v10, Version=10.0.5627.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" name="AR10_RpxHandler" resourceType="Unspecified" preCondition="integratedMode,bitness64" />
      <add verb="*" path="*.rdl,*.rdlx" type="GrapeCity.ActiveReports.Web.Handlers.RdlxHandler, GrapeCity.ActiveReports.Web.v10, Version=10.0.5627.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" name="AR10_RdlxHandler" resourceType="Unspecified" preCondition="integratedMode,bitness64" />
      <add verb="*" path="*.ar10Web" type="GrapeCity.ActiveReports.Web.Handlers.WebCacheAccessHandler, GrapeCity.ActiveReports.Web.v10, Version=10.0.5627.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff" name="AR10_WebCacheAccessHandler" resourceType="Unspecified" preCondition="integratedMode,bitness64" />
    </handlers>

877121273 发表于 2016-10-21 11:50:04

修改后,程序在本地vs中可以运行,不过发布后,报Runtime Error 。应用池已经设置成64位。
页: [1] 2 3
查看完整版本: 查询数据量大时报错