最近一个小项目中用了水晶报表来做一些报表呈现,由于需求不一样,所以实现过程中有些用的是推(Push)模式,有些用的是拉(Pull)模式。

开发环境为VS2008, 报表是10.5.37, 服务器是Win Server 2003

这部分的内容,大家可以先读一下阿泰的文章:http://www.cnblogs.com/babyt/category/75444.html

 

由于部署的服务器上没有开发环境,所以需要部署水晶报表的运行时环境。

参考:http://www.cnblogs.com/babyt/archive/2008/02/19/1073688.html

 

现在终点说一说遇到的问题:

1、部署完成之后,运行,发现报表打不开,提示加载报表失败,这个是没有权限的问题,给..Windows\Temp目录,对Network Service 加上修改的权限。

2、用拉(Pull)模式写的报表,一直出现登录提示对话框,设置CrystalReportViewer的属性,不显示登录提示,这个时候出现错误为数据库链接失败,Provider不存在。

查阅许多才发现,原来是设计报表的时候使用的链接用的是SQL Native Client 或者是SQLNCLI在服务器上没有,把他改为SQLOLEDB就OK了。

用VS打开报表,在数据库那里右键,有个Set Database Location,打开属性,找到Provider,右键编辑,即可更改SQLOLEDB,保存发布,一切正常。

 3、针对2的问题,另外一种解决办法是按照VS2005的SQL Native Client package,我没试过,在下边列出下载地址,需要的朋友可以自行尝试。

 

参考文章:

http://forums.asp.net/t/1040333.aspx

http://www.microsoft.com/downloads/en/details.aspx?FamilyID=d09c1d60-a13c-4479-9b91-9e8b9d835cdc&displaylang=en

posted on 2010-12-09 15:25  沉默的心  阅读(1371)  评论(1编辑  收藏  举报