SQL Reporting Services 困惑的解决 直接传递参数并用ReportViewer来呈现报表

      前几天一个偶然的机会上了odetocode.com,看到几篇关于SQL Reporting Services的文章,很有启发性,于是结合了Reporting Services 联机丛书研究了一下,我的困惑算是暂时解决了tongue_smile.gif
      通过直接传递参数给.aspx页面(使用ReportViewer控件呈现报表),在.aspx页面中接受参数从而呈现所需报表。主要解决方法如下:

1.用vs.net打开ReportViewer这个项目,项目文件夹在你安装的SQL Reporting Services的相关文件夹中(见图1)。
%E5%9B%BE1.JPG

2.打开ReportViewer.cs文件,写入以下方法(见图2),然后重新编译这个项目。
%E5%9B%BE2.JPG

3.新建一个带参数的报表文件rdl,具体不详述,请参考我以前的文章。

4.新建一个.aspx文件,引用编译好ReportViewer.dll,拖入这个控件到.aspx页面(见图3),
%E5%9B%BE3.JPG
可以在ReportViewer的属性栏中直接设置报表路径和报表服务器路径及相关属性,也可以在.aspx.cs的page_load中用code的方式设置(见图4)。
%E5%9B%BE4.JPG

5.为了测试传递参数,再建一个htm页面加入一个链接,连接中加入所要传递的参数(见图5)。
%E5%9B%BE5.JPG

6.在.aspx.cs代码中接受传递来的参数,同时要把接收到参数传递给报表,这就用到了图2中的方法了(见图6)。
%E5%9B%BE6.JPG

7.运行后就可以得到你所传参数的报表了(见图7),上面没有查询参数框是因为在ReportViewer属性的Parameters设为false了,这样看起来界面更好一点。
%E5%9B%BE7.jpg
总结一下:最主要的地方还是在第2步,其实我们可以添加其他类似的方法来达到自己所要的结果。如果要传递2个或3个值怎么办,其实方法也是一样的,只要在报表文件中设置2个或3个参数就可以了。另外补充一下关于导出打印的问题,其实可以在.cs代码中直接设置导出的格式,比如 this.ReportViewer1.Format=“pdf“;这样页面就直接会用acrobat打开的。
以上纯属个人使用经验,若有不对的地方请大家指正,也欢迎大家一起讨论teeth_smile.gif

      

转载于:https://www.cnblogs.com/zsww/archive/2004/06/02/12894.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值