Rdlc/Rdl报表运行时设计之Web篇
时间:2011-03-01 来源:Martell XO
一、工具
SQL Server Reporting Services和Report Builder。Reporting Services可以看作SQL Server的一个组件,如果购买了SQL Server,那么Reporting Services就可以免费使用。Report Builder是微软专门为SQL Server Reporting Services提供的一个报表创作环境,官网提供免费下载。(注意,3.0版本只支持SQL Server 2008R2,2.0版本对应SQL Server 2008,1.0版本没用过,所以建议大家安装SQL Server 2008/2008R2版本)。
二、配置Reporting Services
开始菜单依次打开“程序”->“Mircosoft SQL Server 2008R2”->“配置工具”->“Reporting Services 配置管理器”。
一般上使用默认设置就可以了,在“服务账号”选项卡上面配置Reporting Services系统服务所使用的帐号;“Web服务Url”就是报表服务地址(通过这个Url实现报表呈现功能);“数据库”选项卡上设置Reporting Services登录帐号(访问Web服务Url的帐号)和报表数据库帐号(连接数据库的sa帐号/用户帐号)。能正常访问Web服务Url和报表管理器Url就算配置完成了。
三、设计报表
首先新建一个报表服务器项目。添加数据源,定义数据集,添加报表(默认是rdl格式,rdlc也支持,通过添加现有项目)。
四、部署报表
设置项目属性中的TargetServerURL为刚才配置的“Web服务Url”,然后就可以部署到报表服务器上了。
通过“报表管理Url”可以看到设计的数据源、数据集和报表已经部署到报表服务器上了。
五、设计页面
新建一个Web应用程序或网站。
添加一个页面,使用ReportViewer服务器控件来展现刚才设计的报表。注意:“报表路径”要以“/”开头。
六、发布网站
在客户端,我们使用Report Builder作为报表设计工具。所以切记在相关页面上要添加报表服务器的“报表管理Url”,这个就是运行时报表设计的入口点!!
七、编辑报表
在客户端,我们进入“报表管理器”,点击“报表生成器”进行安装Report Builder(服务器有一个副本,以供客户端下载安装)。
安装玩后,就可以在目标报表右键选择“在报表生成器中编辑”。这里只是修改一下标题,也可设置是否允许修改数据源和数据集(放入不同文件夹,进行权限控制)。
八、完成
修改完报表后,保存到服务器上,刷新一下刚才那个页面,看看效果,是不是已经成功了?!
九、小结
这个方法勉强实现了报表运行时设计功能,不过有很多不是很灵活的地方,比如要求安装SQL Server 2008/2008R2(2005没试过,不确定可行),要完全开发Reporting Services报表管理器的权限给客户端,对数据库服务器的安全性带来一定考验。另外,报表文件缺乏版本控制,如果一个客户端修改了报表,其他客户端也会收到影响……
暂且提供这种方法,因为没在正式项目中使用,到底可不可行,实不实用,各位自行斟酌。
源代码
PS:满意的工作不好找啊…