Reporting-Services學習整理的內(nèi)容_第1頁
Reporting-Services學習整理的內(nèi)容_第2頁
Reporting-Services學習整理的內(nèi)容_第3頁
Reporting-Services學習整理的內(nèi)容_第4頁
Reporting-Services學習整理的內(nèi)容_第5頁
已閱讀5頁,還剩2頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

ReportingServices學習整理簡介1. Microsoft?SQLServer?2000ReportingServices是一種基于服務(wù)器的新型報表平臺,可用于創(chuàng)建和管理包含來自關(guān)系數(shù)據(jù)源和多維數(shù)據(jù)源的數(shù)據(jù)的表格報表、矩陣報表、圖形報表和自由格式報表。可以通過基于Web的連接來查看和管理您創(chuàng)建的報表。2. 支持廣泛的數(shù)據(jù)源3. MicrosoftSQLServerOracle數(shù)據(jù)庫任何與4. ODBC或OLEDB兼容的數(shù)據(jù)源5. ReportingServices提供兩種編程模式:IDE和API6. 微軟的報表可以象VB那樣通過拖拉以及填寫一些必要的信息來一步步的創(chuàng)建,這點功能對非專業(yè)的用戶可能比較有用,但專業(yè)開發(fā)人員可能更喜歡用調(diào)用API的方式來實現(xiàn),演講中微軟的專家現(xiàn)場用VB.NET編寫了代碼,很簡便,例如myReportSystem.deleteItem(…)表示刪除報表.7. 同Outlook集成實現(xiàn)報表的自動發(fā)送8. 因為Outlook是微軟自己的產(chǎn)品,因此實現(xiàn)同Outlook的集成是情理之中,顯然這也是ReportingServices的一個很大的優(yōu)勢,相當于包含了一部分工作流的功能,對于企業(yè)高層用戶來說,時間寶貴,當然不可能總是到ERP中手工獲取報表,ReportingServices可以事先定義好報表規(guī)則,然后可以按月按季度定時把報表自動發(fā)送到用戶郵箱中.9. 提供權(quán)限控制功能10. 分管理員/高級用戶/普通用戶等等權(quán)限,創(chuàng)建報表的人可為該報表分配權(quán)限11. 提供快照和歷史記錄功能,減少了報表服務(wù)器的負荷12. 快照實際上就是在數(shù)據(jù)庫服務(wù)器和報表服務(wù)之間又加了一層Cache,也就是說有些報表可以直接在緩存里調(diào)出來使用,不用每次都查詢。歷史紀錄就象IE里的歷史紀錄一樣,提供了一個索引功能13. 提供便利的接口允許用戶自定義報表規(guī)則14. 非專業(yè)用戶不需要寫SQL語句來實現(xiàn)報表規(guī)則,只需要在一個列表中填寫規(guī)則(例如><=等規(guī)則).這也是微軟一貫的風格,微軟的軟件都是“傻瓜”型的,這也是許多非專業(yè)用戶喜歡微軟軟件的重要原因。15. 同Office集成,而且可以直接轉(zhuǎn)換為PDF格式16. 產(chǎn)生的報表最初是顯示在IE里,也可以轉(zhuǎn)換為Excel等格式,另外還可以轉(zhuǎn)為PDF格式同Office集成是可以理解的,但讓人意外的是,微軟現(xiàn)在也開始提供PDF格式,PDF是WORD的有力競爭者,我想第一是PDF有很多免費的二次開發(fā)工具,第二是微軟也認識到越來越多的用戶在使用PDF格式,PDF的優(yōu)點是體積小、格式清晰美觀、保密功能強.17. ReportingServices是.NET開發(fā)環(huán)境中的一個插件,18. 必須在安裝.NET開發(fā)環(huán)境后才能安裝ReportingServices,在BI(BusinessIntelligence)組件庫中可以找到ReportingServices項目.然后就可以按照Stepbystep的步驟來建報表,一般的要從控件庫里拖拉一個Table放在界面里,然后指定行列以及各自對應(yīng)字段.19. 報表文件通用性強20. 報表定義文件是一個擴展名為RDL的XML文檔。它保存了報表的樣式定義和數(shù)據(jù)源的定義,是微軟自己定義的一種描述報表定義的XML文檔,結(jié)構(gòu)是公開的,因此第三方廠商可以編寫兼容報表服務(wù)的報表設(shè)計器。rdl和rdlc的異同.rdlc是VS2005中報表文件的后綴名,是ReportDefinitionLanguageClient的縮寫,直接翻譯過來可以理解為報表定義語言客戶端。這樣聽起來很難懂,不知所云。其實和rdlc同時存在的還有一個rdl,就是上面這個全程前3個單詞的縮寫。從SQLServer2005開始,微軟提供了一個報表服務(wù)(ReportingService),而rdl是指那些針對報表服務(wù)部署在服務(wù)器端的報表,而rdlc是指在本地的一些報表。也就是說我們要使用報表不一定要依賴于SQLServer的ReportingService,而是可以自主生成一些數(shù)據(jù)源然后通過報表的方式展現(xiàn)出來。如果和rdl比較,rdlc可以看成是一個輕量級的報表。在展現(xiàn)報表的時候我們需要使用到的一個控件叫ReportViewer,這種控件可以展現(xiàn)rdl報表,也可以展現(xiàn)rdlc報表。從其屬性可以看出,ReportView.ServerReport是針對rdl報表的,而ReportViewer.LocalReport是針對rdlc報表的。里面設(shè)置的參數(shù)和內(nèi)容也不盡相同。RDL和RDLC是由稱為報表定義語言的XML架構(gòu)定義的。這兩種文件格式的架構(gòu)是相同的。SQLServer2005聯(lián)機叢書中介紹了這種架構(gòu)。用來處理.rdlc文件的ReportViewer控件忽略RDL的<Query>元素。如果報表定義中包含查詢,此控件將不處理它。在SQLServer2005ReportingServices中創(chuàng)建的報表(保存為.rdl文件)可以轉(zhuǎn)換為ReportViewer控件所使用的客戶端報表定義(.rdlc)文件格式。這稱為RDL到RDLC轉(zhuǎn)換。何時使用遠程處理基于服務(wù)器的報表功能為實現(xiàn)下列任務(wù)提供了方法:集中存儲和管理報表、設(shè)置策略和確保對報表及文件夾的安全訪問、控制處理和分布報表的方式,以及設(shè)置在業(yè)務(wù)中使用報表的標準方式。ReportingServices可以以單服務(wù)器、分布式和群集配置的方式進行安裝。如果報表具有下列特征,請考慮使用遠程處理:報表將被許多用戶訪問。報表有一個非常復(fù)雜的查詢或包含大量數(shù)據(jù),從而導(dǎo)致應(yīng)用程序所在的計算機上的系統(tǒng)資源超載。報表已發(fā)布在報表服務(wù)器上,并且希望將其包含在所創(chuàng)建和部署的應(yīng)用程序中。——將ReportViewer配置為進行遠程處理建議對于包括中小型號報表和數(shù)據(jù)集的應(yīng)用程序使用本地處理模式。由于所有數(shù)據(jù)和報表的處理都是在客戶端進行的,因此,如果您試圖處理大型或復(fù)雜的報表和查詢,性能可能會降低。如果您需要簡單的部署策略,其中應(yīng)用程序的所有部分都在同一臺計算機上一起運行,也建議使用本地處理模式。

本地處理模式的功能不及遠程處理強大,它適用于不需要報表服務(wù)器的獨立應(yīng)用程序。熟悉在遠程SQLServerReportingServices報表服務(wù)器上運行的服務(wù)器報表的用戶應(yīng)注意以下特詳細說明,請參閱ReportingService類,但最基本的是您需要指定要訂閱的報表、生成計劃(例如,每周一早晨或每月的最后一個周五)、電子郵件選項(包括電子郵件地址)以及所有報表參數(shù)值。我已經(jīng)將名為EmailSubscriber的實用工具類包括在本文的示例代碼中,該示例代碼摘要了某些復(fù)雜的內(nèi)容。儀表板應(yīng)用程序使用該類允許用戶指定他們的電子郵件地址并使EmployeeSalesSummary報表通過電子郵件每周一發(fā)送給他們。在產(chǎn)品應(yīng)用程序中,您可以調(diào)整每個用戶的報表,例如,當您創(chuàng)建訂閱時,可以根據(jù)員工的Windows用戶帳戶檢索他們的員工ID,然后適當?shù)卦O(shè)置報表參數(shù)。如果您不希望等到下周一才測試您的訂閱,它有助于您了解有關(guān)ReportingServices如何處理訂閱計劃的更多信息。當您創(chuàng)建一個訂閱時,ReportingServices會創(chuàng)建一個根據(jù)要求的計劃執(zhí)行的SQLServer代理作業(yè)。您可以通過打開EnterpriseManager,展開Management、SQLServerAgent和Jobs文件夾來查看這個作業(yè)。該訂閱作業(yè)將具有“ReportServer”類別,并以由ReportingServices用來跟蹤該作業(yè)的GUID命名。右鍵單擊該作業(yè)并選擇StartJob,如果您已正確地設(shè)置了您報表的方方面面,您的報表將會發(fā)送電子郵件給您。入門常見問題1.頁面尺寸設(shè)置:

在設(shè)計頁面指定頁面尺寸,頁邊距后,工作區(qū)中所有可設(shè)計區(qū)域均為頁面可打印區(qū)域.因此在設(shè)計時不用考慮頁邊距.或者在設(shè)計時將頁邊距設(shè)為0,則工作區(qū)中所有可設(shè)計區(qū)域即為打印區(qū)域.

2.內(nèi)容過長時自動換行延伸:

設(shè)置對象的CanGrow為true可實現(xiàn)內(nèi)容過長自動換行延伸.為保持表格線保持正常銜接,設(shè)置表格線的ExtendToBottomOfSection為true.

3.防止頁眉結(jié)尾表格與詳細資料開始表格交接而導(dǎo)致表格線變寬:

設(shè)置頁眉結(jié)尾表格top屬性為該區(qū)域高度,即表格位于該區(qū)域最下方.

設(shè)置詳細資料開始表格top屬性為0,即表格位于該區(qū)域最上方.

4.去掉字段的下劃線:

在字體屬性中設(shè)置.

5.crystalReportViewer動態(tài)加載報表:

CrystalDecisions.CrystalReports.Engine.TextObjectheadTextObject=null;

if(this.printType==1)

{

CrystalReport1crystalReport1=newCrystalReport1();

crystalReport1.SetDataSource((DataTable)this.printDataSet.Table1);

headTextObject=(TextObject)crystalReport1.Section1.ReportObjects["toTitle"];

this.crystalReportViewer1.ReportSource=crystalReport1;

}

elseif(this.printType==2)

{

CrystalReport2crystalReport2=newCrystalReport2();

crystalReport2.SetDataSource((DataTable)this.printDataSet.Table2);

headTextObject=(TextObject)crystalReport2.Section1.ReportObjects["toTitle"];

this.crystalReportViewer1.ReportSource=crystalReport2;

}

headTextObject.Text="表頭"

6.設(shè)置報表中某對象toTitle并設(shè)置值:見5.以下為Microsoft報表

1.MicrosoftReportViewer動態(tài)加載報表:

BindingSourcebindingSource=newBindingSource();

if(this.printType==1)

{

this.reportViewer1.LocalReport.ReportEmbeddedResource="命名空間.報表文件名1.rdlc"

ReportDataSourcereportDataSource=newReportDataSource("數(shù)據(jù)集1",bindingSource);

//數(shù)據(jù)集1此處的數(shù)據(jù)集名稱一定要和報表設(shè)計時指定的數(shù)據(jù)集名稱一致.

this.reportViewer1.LocalReport.DataSources.Add(reportDataSource);

bindingSource.DataSource=this.printDataSet.Table1;

}

elseif(this.printType==2)

{

this.reportViewer1.LocalReport.ReportEmbeddedResource="命名空間.報表文件名2.rdlc"

ReportDataSourcereportDataSource=newReportDataSource("數(shù)據(jù)集2",bindingSource);

this.reportViewer1.LocalReport.DataSources.Add(reportDataSource);

bindingSource.DataSource=this.printDataSet.Table2;

}

this.reportViewer1.RefreshReport();

2.在報表中添加自定義參數(shù).

打開報表參數(shù)對話框,可在該對話框中加入報表參數(shù),需要注意的是,參數(shù)設(shè)置

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論