zoukankan      html  css  js  c++  java
  • Reporting Service Url传递参数应用

    与sharepoint集成的报表传递参数示例:

    http://reportserver/reportcenter/_layouts/ReportServer/RSViewerPage.aspx?rv:RelativeReportUrl=/reportcenter/ismx/cp_rpt_buyApply.rdl&rp:Apply_No=A061621

    本机模式报表服务器传参格式:

    http://myrshost/ReportServer?/AdventureWorks 2008R2/Employee_Sales_Summary_2008R2&ReportMonth=3&ReportYear=2008

    详见官网:

    https://docs.microsoft.com/zh-cn/sql/reporting-services/pass-a-report-parameter-within-a-url?view=sql-server-2017

    注意使用rp:参数 形式传参,参数名大小写区分,若直接使用如下方式,大小写不区分

    http://reportserver/reportcenter/_layouts/ReportServer/RSViewerPage.aspx?rv:RelativeReportUrl=/reportcenter/ismx/cp_rpt_buyApply.rdl&Apply_No=A061621

    以下是扯淡忽略

    参数传递格式:http://servername/reportserver?/rptcenter/HRReport&rs:Format=EXCEL&rs:Command=Render&rp:RequestNo=applyno

    报表接收:打开报表数据-->参数-->新增参数名为"RequestNo"的参数-->Done

    ********************************************更多参数说明************************************************

    SQL Server Reporting Services(SSRS)报表发布后经常需要定制报表的URL参数以限制访问的样式和内容。本文主要针对SSRS报表URL参数以及相关的应用进行阐述并举例说明。
    报表URL参数的结构:
    http://ServerName:7999/reportserver?/AdventureWorks/Product&rs:Command=Render
    参数说明:
    ServerName:7999,ServerName表示服务器名称,7999端口
    ReportFolder:表示发布后的报表文件夹; ReportName表示报表名称; &后为报表参数。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/Product&rs:Command=Render&rp: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。

     5)&rv:HeaderArea=None

    隐藏导航头部

    6)rv:RelativeReportUrl

    导航的报表url

  • 相关阅读:
    腾讯QQ强制下线,每天可能强抢会员300万元
    visual studio 2010 winform程序不能添加对system.web的引用
    一个用来将Excel中同一个人的多行记录中的特定列合并到第一行的宏
    很希望看到微软来一次“因为QQ未经用户允许扫描硬盘,在所有window平台拒绝运行QQ”
    windows2003的数据执行保护会造成无法正常安装SQL SERVER
    改变jboss部署目录(虚拟目录)
    SecureCRT6.5.0英文版,提示数据库里没有找到防火墙"无"
    spring注解事务
    windows下查看端口被哪个程序占用
    union和union all区别
  • 原文地址:https://www.cnblogs.com/jeffry/p/5141837.html
Copyright © 2011-2022 走看看