国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > 綜合 > 正文

SSRS 的簡單使用(二)

2024-07-21 02:46:31
字體:
供稿:網(wǎng)友
SSRS 的簡單使用(二)

經(jīng)過上一篇的初始,我們已經(jīng)做好了報(bào)表的準(zhǔn)備工作,接下來我們進(jìn)行報(bào)表的展示和其他一下操作,并且給出一些使用RS的方法方便大家日后能靈活使用。

步驟:

1.首先拖拽表格等進(jìn)入到設(shè)計(jì)模板

點(diǎn)擊左側(cè)工具欄,選中Table 然后拖拽到設(shè)計(jì)模板內(nèi)。如圖

2.修改表內(nèi)信息如下圖所示即可

表頭和內(nèi)容各站一行。

3.接下來我們簡單介紹一下表頭的表格合并和列數(shù)據(jù)聚合

左下側(cè),點(diǎn)擊詳細(xì),然后選擇加入父群組,然后即可根據(jù)所需進(jìn)行合并項(xiàng),如下圖所示

你可以在組頭或組尾加入聚合函數(shù)或敲入一個(gè)標(biāo)題來描述這一列。下面通過一個(gè)表達(dá)式來創(chuàng)建一個(gè)累加聚合。右鍵表格右下角處于行和列最后的那個(gè)單元格,右鍵點(diǎn)擊文本單元格屬性,在值那一欄填入:=SUM(Fields!字段.Value),如圖。

9

排序篩選關(guān)鍵字也可設(shè)定

4.調(diào)整完畢后可以展示出來,預(yù)覽

至此完整的簡要報(bào)表生成已經(jīng)完成,接下來我轉(zhuǎn)載了幾種應(yīng)用報(bào)表的發(fā)布,希望能提供相應(yīng)的幫助

報(bào)表的發(fā)布

設(shè)計(jì)完報(bào)表之后,就要將其發(fā)布到Reporting Services服務(wù)中,以供調(diào)用。我們可以把這個(gè)發(fā)布稱作deploy。

經(jīng)過實(shí)際應(yīng)用,發(fā)現(xiàn)可以有下面三種方法來進(jìn)行報(bào)表的發(fā)布

在BI中編譯發(fā)布

我們?cè)O(shè)計(jì)報(bào)表是在BI中進(jìn)行的,可以利用它來一次性將整個(gè)報(bào)表工程deploy到服務(wù)器上。大致步驟如下:

  1. 菜單執(zhí)行PRoject->Properties,將Configuration改為Production,即編輯Production模式的參數(shù);
  2. 在右邊分別填入相應(yīng)的屬性值,一般來說TargetDataSourceFolder的內(nèi)容Data Sources不變,如果數(shù)據(jù)源有更新,那么就必須將上面的OverwriteDataSources設(shè)為True;
  3. 設(shè)置TargetReportFolder。這個(gè)值是在Report Server中的一個(gè)虛擬目錄,該工程的所有rdl文件都將存放在這個(gè)目錄下;
  4. 設(shè)置TargetServerUrl。這里就是Reporting Services所在的URL地址,比如本地部署可以用http://localhost/ReportServer。注意后面的那個(gè)路徑是默認(rèn)的安裝路徑,在IIS中打開默認(rèn)站點(diǎn)后可以看到它,是一個(gè)虛擬目錄;
  5. 都填寫完畢之后,在編譯環(huán)境中切換編譯模式為Deploy,再Start Debugging,這時(shí)BI就會(huì)自動(dòng)向Report Server部署這一系列的報(bào)表。

完了之后會(huì)顯示http://localhost/ReportServer這個(gè)頁面,在這個(gè)頁面中顯示的就是該報(bào)表服務(wù)器上所有的ReportFolder,而報(bào)表則會(huì)按照deploy時(shí)的設(shè)置,分別保存在這些folder內(nèi)。進(jìn)入Folder之后,點(diǎn)擊報(bào)表即可查看,系統(tǒng)已經(jīng)為我們生成了一個(gè)帶有ReportViewer的aspx頁面。

通過Web下的Report Manager

下面這兩種方法均是用來管理報(bào)表服務(wù)器,發(fā)布報(bào)表只是它們的一部分功能。

使用Report Manager的大致步驟如下:

  1. 打開Report Manager的頁面,一般為http://ServerUrl/Reports;
  2. 進(jìn)入Data Sources文件夾,上傳數(shù)據(jù)源的rds文件;
  3. 回到根文件夾,建立一個(gè)ReportFolder,名稱即TargetReportFolder中的值;
  4. 進(jìn)入該文件夾,把rdl文件逐一上傳,它會(huì)自動(dòng)給報(bào)表起名,一般接受默認(rèn)值。

這樣就OK了,之后也可以在ReportServer頁面下查看內(nèi)容。

通過SQL Server Management Studio

在SQL Server的配置中,這個(gè)工具無疑是最強(qiáng)大的。在登錄SSMS的時(shí)候,選擇Server Type為Reporting Services,然后指定Server的名稱,以及登錄方式。登錄成功后,在Home目錄下就是我們?cè)赗eport Manager中看到的內(nèi)容,后面的操作大同小異,就不浪費(fèi)文字了。

利用ReportViewer控件引用報(bào)表

建立、發(fā)布報(bào)表的最終目的還是為了在程序中引用它們,在此我們選擇的是最簡單的方法——使用ReportViewer控件。

WinForm環(huán)境下的ReportViewer

WinForm下的ReportViewer控件,位于Microsoft.Reporting.WinForms命名空間下,在VS2005中默認(rèn)會(huì)出現(xiàn)在ToolBar中,直接將其拖放進(jìn)窗體即可對(duì)其操作。

一般來說,所有報(bào)表都必須設(shè)置的參數(shù)有以下幾個(gè):

  • ProcessingMode:這個(gè)屬性用來設(shè)置ReportViewer的數(shù)據(jù)來源是本地還是遠(yuǎn)程,在這里我們?cè)O(shè)為Remote;
  • ServerReport.ReportServerUrl:就是我們前面看到的TargetServerUrl,即報(bào)表服務(wù)器的URL地址。注意這個(gè)地址包含了“ReportServer”,比如http://ServerUrl/ReportServer這樣;
  • ServerReport.ReportPath:是ReportFolder和ReportName的組合,比如“/Test/Report1.rdl”,注意注意千萬注意,最開始的那個(gè)“/”一定不能省略!

對(duì)于實(shí)際應(yīng)用,采用代碼來控制ReportViewer要比設(shè)計(jì)時(shí)設(shè)置屬性更加常用,下面就是一個(gè)簡短的例子,概括了這樣一個(gè)過程:

this.reportViewer1.ServerReport.ReportPath = "/Test/Report1"; List<ReportParameter> parameters = new List<ReportParameter>(); parameters.Add(new ReportParameter("params",textQueryString.Text)); this.reportViewer1.ServerReport.SetParameters(parameters); this.reportViewer1.ShowParameterPrompts = false; this.reportViewer1.RefreshReport();

在上面的過程中,先是設(shè)置ReportPath(ReportServerUrl在本示例中已經(jīng)指定,實(shí)際上應(yīng)該通過App.config的設(shè)置字符串來設(shè)置)。然后創(chuàng)建報(bào)表參數(shù)列表(這個(gè)params的名稱是在設(shè)計(jì)報(bào)表的時(shí)候設(shè)置的報(bào)表參數(shù),在SQL語句中通過@params進(jìn)行引用),進(jìn)而調(diào)用ServerReport的SetParameters方法,將參數(shù)傳遞給報(bào)表。緊接著,將報(bào)表的ShowParameterPrompts屬性設(shè)為false,即不在ReportViewer的頭部顯示參數(shù)輸入提示。最后執(zhí)行RefreshReport()方法,刷新報(bào)表頁面。

asp.net環(huán)境下的ReportViewer

微軟的統(tǒng)一性工作無疑是相當(dāng)出色的,Web下的ReportViewer在使用起來與WinForm下完全相同,唯一不同的就是控件位于Microsoft.Reporting.WebForms下,而諸如ReportParameter等類也改為此命名空間之下。在代碼控制報(bào)表方面,不需要進(jìn)行改動(dòng)即可移植。

Visual WebGUI下的ReportViewer

在項(xiàng)目中,我們是采用VWG來作為程序的框架的。Gizmox開發(fā)團(tuán)隊(duì)也為ReportViewer設(shè)計(jì)了相應(yīng)版本,控件位于Gizmox.WebGUI.Reporting命名空間下,但要注意,它的屬性諸如ReportParameter、ProcessingMode等仍然是位于Microsoft.Reporting.WebForms下的,這一點(diǎn)不要搞錯(cuò)。

直接通過ReportServer訪問報(bào)表

還記得前面提到過的http://ServerUrl/ReportServer嗎?SSRS已經(jīng)為我們準(zhǔn)備了一個(gè)用來查看報(bào)表的方法,即通過URL訪問,比如要查看在localhost/ReportServer服務(wù)器中,位于Test下的Report1報(bào)表,可以直接在瀏覽器中輸入 http://localhost/ReportServer?Test/Report1,SSRS會(huì)自動(dòng)調(diào)用一個(gè)系統(tǒng)內(nèi)置的頁面來顯示它。在這個(gè)帶參數(shù)的URL后面,我們可以通過附加URL參數(shù)的方法來對(duì)報(bào)表進(jìn)行控制。比如上面的那個(gè)例子,在ASP.NET中可以使用Response.Write()向頁面寫入下面的代碼來彈出窗口顯示報(bào)表:

"<script language=/"javaScript/"> window.open('http://localhost/ReportServer?Test/Report1&params=" + textQueryString.Text + "&rc:Parameters=false&rs:Command=Render'; </script>"

其中URL參數(shù)的構(gòu)造方法請(qǐng)參閱MSDN相關(guān)文檔。

總結(jié):

本篇簡單的介紹了如何產(chǎn)生報(bào)表以及相關(guān)的設(shè)定,我們將在下一篇中介紹如何用更高級(jí)的展示來表現(xiàn)數(shù)據(jù),諸如柱狀圖餅狀圖甚至是更漂亮的圖例。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 竹山县| 桐柏县| 玛曲县| 龙岩市| 新建县| 习水县| 尚义县| 新平| 北京市| 庆城县| 长寿区| 永春县| 晋州市| 绥德县| 漠河县| 桃江县| 行唐县| 林甸县| 玉林市| 城市| 阿荣旗| 连江县| 南召县| 洛宁县| 新乡市| 灌云县| 龙胜| 康马县| 廉江市| 鲁山县| 古交市| 抚远县| 正阳县| 平陆县| 金沙县| 克什克腾旗| 南投市| 长丰县| 花垣县| 冕宁县| 封开县|