http://blog.sina.com.cn/s/blog_5ef7acf5010118a5.html

Reporting Services报表常用的URL参数

(2012-03-01 20:57:33)

标签:

杂谈

分类: 技术档案

http://www.erpgear.com/2011/0728/1704.html

Reporting Services报表常用的URL参数

2011-07-28 09:38:40 作者:admin 来源: 浏览次数:26网友评论 0 条

SQL Server Reporting Services(SSRS)报表发布后经常需要定制报表的URL参数以限制访问的样式和内容。本文主要针对SSRS报表URL参数以及相关的应用进行阐述并举例说明。
报表URL参数的结构:
http://ServerName/reportserver?/ReportFolder/ReportName&Parameters
其中: ServerName表示服务器名称,如果端口不是80还需要加上端口号,如ServerName:8080;
ReportFolder表示发布后的报表文件夹; ReportName表示报表名称; &后为报表参数。
下面是一个完整的报表URL链接:
http://ServerName:8080/reportserver?/AdventureWorks+Sample+Reports/Product+Line+Sales&rs:Command=Render

ReportFolder为: AdventureWorks Sample Reports,中间的空格用“+”连接;
Reportserver后需要使用转义字符,“/”的转义字符是/;
ReportName是Product Line Sales;
Parameters是rs:Command=Render
在使用报表URL参数前需要注意的问题:

1、 转义字符:常用的转义字符如下:

序号

字符

含义

十六进制值

1

+

URL 中+号表示空格

+

2

空格

URL中的空格可以用+号或者编码

 

3

/

分隔目录和子目录

/

4

?

分隔实际的 URL 和参数

?

5

%

指定特殊字符

%

6

#

表示书签

#

7

&

URL 中指定的参数间的分隔符

&

8

=

URL 中指定参数的值

=

2、汉字的转化:URL本身不能直接识别汉字,要想传递汉字,需要将汉字转化为utf-8码。一个通用的方法是通过
HttpUtility.UrlEncode方法将需要转化的汉字转化,这可以通过用代码写一个小工具来实现。另一个更直接的方法是,添加一张报表,报表
名称使用需要转化的汉字,发布报表,然后到reportserver中查看报表,这时报表的链接即包含所需的utf-8码。

3、 报表参数是大小写敏感的,所以必须与原参数的大小写一样,否则会导致参数传递失败。

4、
传递空值参数:格式:ParameterName:isnull=true,如:SalesOrderNumber:isnull=true

举例:
按传递的参数类型,有来自关系型数据库的参数,此类较为简单,按照上文对特殊字符转义并将汉字转换即可。如:
http://ServerName:8080/reportserver?/AdventureWorks+Sample+Reports/Product+Line+Sales&rs:Command=Render&StartDate=2003-1-2

其中StartDate为报表参数,其值为”2003-1-2”。
注意:报表参数在报表里面由名称和提示组成,显示出来的名称实际上是提示,比如上面的报表参数名称为“StarDate”而提示为“Start
Date”,传递过程中需要使用实际的名称才能保证正确传递。
报表参数来自Cube时,情形稍有变化,如:
& RegionRegion=[Office].[Region].&[1]
参数名称是“RegionRegion”,而参数值是“[Office].[Region].&[1]”,参数值使用的是mdx表达式,而不是显示的值,这是与关系型数据库不同的地方。而且此处使用了转义字符,“&”转义为“&”。

常用的URL参数:
1)
&rc:Parameters=Collapsed
Collapsed表示参数栏折叠,通常用于参数较多的情况,效果见图1:

Parameters还有另外两个值:true和false,其中true表示显示参数栏,是报表的默认值,false表示隐藏参数栏。隐藏后的效果是图1中去掉红色圆圈的部分。

2)
&rc:Toolbar=false
用于控制Toolbar显示或者隐藏,默认为显示,值为false时表示Toolbar隐藏。
3)
&rc:Zoom=whole page
设置报表缩放值,缩放值以整数百分比或字符串常量表示。标准字符串值包括 Page Width 和 Whole Page。其中Page
Width表示报表按页宽展示,即报表展示部分占满一整页的宽度。Whole
Page表示按页长度展示,即报表展示部分刚好显示在一页。
4) &rs:Format =
PDF
指定报表呈现的形式,包括:HTML3.2、HTML4.0、MHTML、IMAGE、EXCEL、WORD、CSV、PDF、XML 和
NULL。

Reporting Services报表常用的URL参数的更多相关文章

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

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

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

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

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

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

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

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

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

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

  6. 【Reporting Services 报表开发】— 数据表存储格式修改

    文本框 Format属性:日期:输入d(表示简易日期).2007/5/1 0:00:00   输入d之后 变成 2007/5/1 金额:输入C0(表示货币),系统会根据设定值产生对应的货币符号,至于0 ...

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

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

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

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

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

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

随机推荐

  1. quartz 应用

    quartz api地址:http://www.quartz-scheduler.org/api/2.2.0/ 根据需求选择quartz调度方案: 1,如果调度时间是固定不变的,可以选择静态调度 2, ...

  2. [转] 理解 LSTM 网络

    [译] 理解 LSTM 网络 http://www.jianshu.com/p/9dc9f41f0b29 Recurrent Neural Networks 人类并不是每时每刻都从一片空白的大脑开始他 ...

  3. 【翻译】Context should go away for Go 2

    2017/08/06   每次blog.golang.org更新博客,我都迫不及待去读一下:最新的一篇, Contributors Summit,记录了Go贡献者们的一些讨论.我读到一句话,让我感觉得 ...

  4. The NMEA 0183 Protocol

    The NMEA 0183 Protocol NMEA0183 协议是由美国国家海洋电子协会开发.维护并发布的标准,用于航海远洋时使用的电子仪器之间的通信. 目前大部分的 GPS 接受设备都遵循这一标 ...

  5. 网络流Ek算法

    例题:  Flow Problem HDU - 3549 Edmonds_Karp算法其实是不断找增广路的过程. 但是在找的过程中是找"最近"的一天增广路, 而不是找最高效的一条增 ...

  6. unity中实现简单对象池,附教程原理

    Unity对象池的创建与使用 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享 ...

  7. c——分解数

    把316分解为两个数之和,这两个数分别能被11和13整除 #include <stdio.h> int main() { ,j,k; do { i++; k=-*i; } ); j=k/; ...

  8. C++学习(五)(C语言部分)之 运算符

    运算符学习时的笔记(其实也没什么用,留着给自己看的) 运算符 用来对数据运算的符号 优先级 3+4*5+6 先乘除 然后加减 运算符优先级高就先算 40多个运算符 15层优先级 不需要背 1.查表 2 ...

  9. 费马大定理以及求解a^2+b^2=c^2的奇偶数列法则

    <一>费马大定理:a^n+b^n=c^n 当n大于2时无正整数解. <二>求解a^2+b^=c^2可以使用a值奇偶法则:1.当a=2*n时,b=n^2-1,c=n^2+1   ...

  10. STM32F4的sct文件理解

    原文地址http://blog.sina.com.cn/s/blog_898f36590100ya2l.html ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ...