您的位置:首页 > 其它

水晶报表工具栏出现红叉叉无法打印导出等问题的解决方法

2010-05-12 10:18 435 查看
转:/article/4662247.html

常见场景:

使用WebForm方式开发水晶报表应用,在本机调试一切正常。但是发布到服务器上以后,报表可以正确显示。
但是工具栏上的图标却成了红叉叉,无法执行打印、导出操作,页面提示有脚本错误。

解决方法:

在此页面上点击右键,查看本页的HTML代码,查找export_over.gif (这就是那个导出图标的图片名称)
注意,这个地址不具有通用性,如果你显示的跟这个地址不一样,是完全正常的。



这个红色标注的地址,是使用“文件系统”建立网站时出现的,实际物理位置是:
C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/ASP.NETClientFiles/crystalreportviewers115

注意这个位置,因为你的项目打包的时候这个目录是不会被打进去的,所以你再按照此方式,查看本机调试正确的页面的HTML代码,找到对应的文件夹
将这个文件夹的文件/aspnet_client/System_Web/2_0_50727/crystalreportviewers115(你实际的可能与此不同) 整个拷贝到服务器上的对应位置即可。

一般情况下,是拷贝到 C:/inetpub/wwwroot 这个里面的对应目录里的

常见场景:

WebForm开发的水晶报表应用,本地调试正常,但是到了服务器上,工具栏可以正常显示,报表数据可以正常显示,唯一的问题就是图表的位置没有出现图,只是个红叉叉。

解决方法:

查看一下这个页面的HTML代码,在图表的位置,是类似于以下的一个图片

<img src="CrystalImageHandler.aspx?dynamicimage=cr_tmp_image_d587aabc-52c4-412b-b990-18dc8d0e8cb8.png" alt="图像" border="0" width="480px" height="288px" />

我们注意到CrystalImageHandler.aspx这个路径,是当前路径,但是该文件在我们的项目中又不存在。

查看能正常显示的图表项目的Web.config。会发现

<system.web>



<httpHandlers>
<add verb="GET" path="CrystalImageHandler.aspx" type="CrystalDecisions.Web.CrystalImageHandler, CrystalDecisions.Web, Version=11.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
</httpHandlers>
</system.web>

这么一小节(你实际显示的跟这个版本可能会有所不同)。这个是添加图表后,程序自动在该配置文件中增加的一个httphandler。

出现此问题的原因多半是因为手工编辑web.config时,遗漏了这个部分。将你调试时使用的web.config的这一小节拷贝到发布机上即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐