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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM