背景部分

使用Reporting Services很容易制作和发布我们需要的报表,报表效果也还不错

不过如果报表数据过大或报表数量过多,打开及查看报表感觉可能就是另外一回事了

好在Reporting Services提供了离线下载功能;同时,也提供了Web Services供开发人员调用

作为一个软件工程师,完全可以建一个控制台程序,代码写好,使用配置文件获取报表参数

运行,喝杯茶,所有的报表就下载到本地了~~~

技术部分

Web Services比较常用的服务地址如下

http://[RS Server Name]/ReportServer/ReportExecution2005.asmx

其中:[RS Server Name]是Reporting Services服务器的名字

我们当然可以在项目中添加Web Reference的方式加入Web Services

不过也可以使用VS工具中的WSDL生成编译文件,供后期项目重复使用,下载可以点击这里

对于导出报表功能,我也简单的获取了一个类来封装调用,下载可以点击这里

调用举例

Report rpt = new Report();

// 以下参数按照实际环境修改

rpt.ServerUrl = "http://[RS Server Name]/ReportServer";

rpt.UserName = "User Name";

rpt.Password = "Password";

rpt.Domain = "Domain Name";

// 报表所在的路径,参考下图

rpt.FolderPath = "/Northwind Reports/NorthwindCustomers";

// 导出文件的格式

rpt.Format = ReportFormat.EXCEL;

// 导出到指定位置

rpt.Export(@"C:\Nw2.pdf");

如果需要传入参数,可以参考如下

rpt.Parameters = new ParameterValue[1];

rpt.Parameters[0] = new ParameterValue();

rpt.Parameters[0].Label = "Month";

rpt.Parameters[0].Name = "Month";

rpt.Parameters[0].Value = Month;

其中:rpt.Parameters[0].Value必须使用RDL报表中参数实际使用的值

[03/29/2016]Updates:

在报表查看页面中可以点击右侧下拉菜单,点击其中的“Download...”,下载的RDL文件直接使用记事本可以找到参数的实际使用名称

Andy Yang

2014.03.20

代码导出Reporting Services报表文件的更多相关文章

  1. 【HOW】如何限制Reporting Services报表导出功能中格式选项

    Reporting Services报表导出功能中缺省会提供多种导出格式选项,但很多情况下不需要全部的格式选项,因此需要对这些选项进行限制.下面我们以SQL Server 2008 R2为例来说明对这 ...

  2. Reporting Services报表常用的URL参数

    http://blog.sina.com.cn/s/blog_5ef7acf5010118a5.html Reporting Services报表常用的URL参数 (2012-03-01 20:57: ...

  3. 【Reporting Services 报表开发】— 交互式报表

    我们知道,界面是人与系统间的对话方式,当使用者面对的是冷冰冰的界面,不但会造成使用者对于系统的热情减低,也会因为不便而产生诸多抱怨.尤其像报表时企业内几乎每日都会使用到的工具,因此,如何让使用者可以再 ...

  4. 【Reporting Services 报表开发】— 页码编列

    一.打开 SQL Server Business Intelligence Development Studio,新建项目—>商业智能项目—> 报表服务器项目,命名为CH4 二.在报表文件 ...

  5. 【Reporting Services 报表开发】— 级联式参数设置

    级联式参数设置 再清楚的菜单,只要遇到选择项目一多的时候,难免会让人眼花缭乱,而找不到该选的选项.举例来说,像是零售业动辄万种商品品类,如果希望快速的选择到希望查看的产品品类时,就需要更有效率的搜索方 ...

  6. 【Reporting Services 报表开发】— 数据表的使用

    一.打开 SQL Server Business Intelligence Development Studio,新建项目—>商业智能项目—> 报表服务器项目,命名为CH3 二.在报表文件 ...

  7. 【Reporting Services 报表开发】— 矩阵的使用

    矩阵,相较于数据表示一维的数据,只能指定固定的数据列,来呈现动态的明细数据行,所以,它可以说是种二维的数据展现形式,让我们能够很容易地从数据行和数据集的交替中查看对应的汇总信息.像SQL Server ...

  8. 【HOW】如何通过URL给Reporting Services报表传递参数

    [本地模式Reporting Services] 参见官方文档:http://msdn.microsoft.com/en-us/library/ms154042.aspx 示例:http://serv ...

  9. 【Reporting Services 报表开发】— 表达式

    一.常用的SSRS原始函数可以打开文本框的表达式中看到,如图1 图1 如下为SSRS中设计报表时常用的运算函数: 运算符/函数 说明 + 前后位数字则为加法,前后为字符串则为链接符号 - 数值减法 * ...

随机推荐

  1. 类或方法名后加<>

    声明类型为泛型. 说明传递的参数为泛型,而不仅仅是一种类型. public void aa<T>(T a) { Console.WriteLine(a); } 调用时可写: this.aa ...

  2. AutoLayout那些坑

    最近在做一个聊天界面,要适配iOS所有屏幕. 以前的思路是键盘弹出的时候去改table 和输入框的frame. 现在发现和autolayout的约束有冲突. 搞了半天发现需要动态改Constraint ...

  3. windows下mysql远程访问慢

    在my.conf中加入  skip-name-resolve

  4. STL中的算法小结

    ()要运用STL的算法,首先必须包含头文件<algorithm>,某些STL算法用于数值处理,因此被定义于头文件<numeric> ()所有STL算法都被设计用来处理一个或多个 ...

  5. java中产生对象的两种方式

    /* * 普通new对象的过程! */ Person pp = new Person(); System.out.println(pp); /* * 利用代用参数的构造器产生对象实例! * 首先获得相 ...

  6. 《编写高质量代码:改善C#程序的157个建议》源码下载

    ==== 目录 前 言第一部分 语言篇第1章 基本语言要素 / 2建议1:正确操作字符串 / 2建议2:使用默认转型方法 / 6建议3:区别对待强制转型与as和is / 9建议4:TryParse比P ...

  7. 【转载】让windows使用linux系统的命令

    转载自:http://blog.chinaunix.net/uid-28336510-id-3824903.html 1.下载GnuWin32,GnuWin32的安装文件(GetGnuWin32-0. ...

  8. 新开博客 http://wylhyz.github.io/

    刚刚使用hexo在github pages上建立了静态博客,地址 http://wylhyz.github.io/

  9. "浅谈Android"第二篇:活动(Activity)

        距离上一篇文章,过去有半个多月了,在此期间忙于工作,疏于整理和总结,特此写下这篇博文,来谈谈自己对Activity的理解.总所周知,Activity组件在Android中的重要性不言而喻,我们 ...

  10. SQL Server技术问题之视图优缺点

    优点: 一.简单性.视图不仅可以简化用户对数据的理解,也可以简化他们的操作.那些被经常使用的查询可以被定义为视图,从而使用户不必为以后的操作每次都指定全部的条件. 二.安全性.通过视图用户只能查询和修 ...