版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、開發(fā)人員設計的報表不可能涵蓋組織所有需要展示的內容,終端用戶往往需要自己設計報表,但他們又面臨著不了解業(yè)務數(shù)據(jù)庫的結構的困難。在這種情況下,很自然地,在開發(fā)人員和終端用戶之間需要有一種分工:由開發(fā)人員提供一個針對業(yè)務數(shù)據(jù)庫結構的解釋(或翻譯);在解釋(或翻譯)的基礎上,終端用戶得以創(chuàng)建滿足自己需要的即席(Adhoc)報表。首先來看一下開發(fā)人員如何完成對業(yè)務數(shù)據(jù)庫結構的解釋或翻譯。對業(yè)務數(shù)據(jù)庫結構的解釋或翻譯是通過報表模型項目來完成的。報表模型項目可以看作是一個容器,它由一個或多個數(shù)據(jù)源、數(shù)據(jù)源視圖和報表模型組成:1)數(shù)據(jù)源用于提供對業(yè)務數(shù)據(jù)庫的連接信息,數(shù)據(jù)源文件在報表模型項目中的擴展名是.d
2、s;2)數(shù)據(jù)源視圖(DataSourceView,DSV)可以被看作上一個業(yè)務數(shù)據(jù)庫的“視圖”,就是說在數(shù)據(jù)源視圖中,可以使用業(yè)務數(shù)據(jù)庫中對象的結構并在此基礎上作一定的修改以滿足報表展示的需要,例如定義表間關系和主鍵、創(chuàng)建命名查詢和計算列等,數(shù)據(jù)源視圖文件在項目中的擴展名是.dsv;3)報表模型是一個語義模型(SemanticModel),是對數(shù)據(jù)源視圖所引用的數(shù)據(jù)庫的元數(shù)據(jù)的說明,是報表模型項目的最主要組成部分。報表模型文件在項目中的擴展名是.smdl,SMDL是SemanticModelDefinitionLanguage(語義模型定義語言)的縮寫,和RDL一樣,SMDL也是基于XML語法
3、的。需要注意的是:此處數(shù)據(jù)源只能是SQLServer2000/2005或AnalysisServices2005,這是因為報表服務器處理報表模型這種語義模型時使用的查詢翻譯器需要將針對語義模型的操作轉換為相應的SQL語句,將來其它的數(shù)據(jù)源也可能會被支持;另外,每個報表模型只能引用一個數(shù)據(jù)源或數(shù)據(jù)源視圖。圖1和圖2是一個報表模型文件的實例。一個模型中可以存在一個或多個實體、文件夾和透視。實體是由角色、屬性組成的。角色描述了該實體與其它實體間的關系。屬性有多種表現(xiàn)形式:若Binding屬性指定為DSV中的一個列名,則該屬性被稱為源字段;若屬性是由其Expression屬性決定,則該屬性被稱為表達式
4、,如向導會為不同日期組成部分的日期屬性創(chuàng)建變體、為數(shù)值屬性創(chuàng)建Sum、Avg、Min和Max聚合;若屬性的IsFilter屬性為True并且Filter屬性為一個返回邏輯值的表達式,則該屬性被稱為篩選器。圖1報表模型中包含的對象名稱類型Entity倉支忖記錄EntityNewFolderEntityFolder|應FJewPerspectivePerspective1透視.模型的子集方便對不同用戶蛆逬百分區(qū)V立評夾,方便對實尊進存分齟和導航名稱+雇員園報表模型類型說明#EmployeeAttributeEmployeeRole亀ManagerRole團Emplciyee卩州HistnryRol
5、eryFilterTAttributei頭銜-蠱生日屋性,與DSV中的列或計算列對應不同日期蛆成部分的日期屋性吏尊聚合,適用于日期或數(shù)值屋性角色,與實悻之間的關系相對應篩選蠱,用于篩選數(shù)垂AttributeAttributeAttributeAttributeAttributeAttributeAttributeAttributeAttributeAttributeAttribute+.叮Model:“2=1|2=1支忖記錄+_|NewFolderAttributeAttributeAttributeAttributeBirthDate日&誕hDate戸MhDate年E昭&鈕季度A婚姻狀況a性
6、別翩雇傭日期r是否帶薪-休假時間=病假時間。當前狀龕iRowguidil修改日期勺第_&昭Dat己Attribute3最石于爵估口曰岀Attribute口雇員編號Attribute圖2報表模型實體中包含的對象BIDS為報表模型項目的開發(fā)提供了非常易用的向導,向導使用一個數(shù)據(jù)源視圖作為輸入,經(jīng)過計算表行計數(shù)、計算列唯一性、計算列寬度、生成表和列以及關系的處理規(guī)則的過程輸出一個報表模型文件。報表模型文件將直接展示在終端用戶的面前,所以其中的實體、角色、屬性等都應該具有唯一且容易由之聯(lián)想到具體業(yè)務的名稱??梢赃@么說,數(shù)據(jù)源視圖是報表模型和業(yè)務數(shù)據(jù)庫之間的中間層,而報表模型又是業(yè)務數(shù)據(jù)庫和終端用戶使用
7、的報表設計器的中間層。需要注意的是,每個實體的IdentifyingAttributes屬性集合中必須至少存在一個成員,就是說每個實體都需要有具有辨識該實體的屬性集合,否則會出現(xiàn)編譯錯誤。報表模型項目創(chuàng)建完畢后,需要部署之以便報表服務器的訪問。3dlATHBIodel雇性頁OverwriteDat包Eour匚m配置C:|活動(Ffoducticm)三|在非默認實例安裝百QLServer200芻的昔況下,需要注意設置正確的抿表巌務署路徑設置為This以連重拿部寒項目,歐認設置False配置管理器.OverwriteDataSonrces指明在部署項目時是否可以覆蓋報表服務器上的數(shù)據(jù)源定殳-日部暑
8、ht七匹1ATDOLL/ReportSjT:=ltgetServerlflLLTrueT:=ltgetilataSuui_ceFolderTargetModelFolderDataSoTLrceATIodel-配置雇性常規(guī)確定I取消I應用I圖3報表模型項目的部署選項接著,來看一下終端用戶如何利用報表模型創(chuàng)建即席報表。終端用戶創(chuàng)建即席報表,首先要求在客戶端存在一個報表設計器。SQLServer2005ReportingServicesReportBuilder即是一個客戶端的報表設計器,這是一個可以從報表服務器訪問的易于集中管理的ClickOnceWindows應用程序。ReportBuilde
9、r在服務器上的物理路徑是X:ProgramFilesMicrosoftSQLServerMSSQL.3ReportingServicesReportServerReportBuilderReportBuilder.application,在各戶端可以通過類似http:/(ServerName)/ReportServer$(InstanceName)/reportbuilder/reportbuilder.application的URL訪問,并下載到客戶端類似C:DocumentsandSettingsAdministratorLocalSettingsApps2.0LCQC7WWZ.25ZVP
10、HJ3NW5.ADG的物理路徑中。終端用戶使用上述URL啟動報表設計器、在三種可用報表布局(模板)表格(縱覽式)、矩陣(交叉表)和圖表中的一種并選擇以報表模型名稱或透視名稱顯示的數(shù)據(jù)源后,就會出現(xiàn)圖4所示的ReportBuilder界面:資源管理器管理著上述報表模型的實體及字段,在設計報表狀態(tài)下,用戶可以自己進行簡單的報表定制。卑報表111crosoftReportBuilder文件編輯視圖迪插入格式報表幫助D占(3|吆設計報表詠運行報表資濾管理器XAWPRV實體:綣B昌支忖記錄|單擊此項添加標題拖放列字段字段:蘑#Employee口雇員編號i頭銜+蠱生日A婚姻狀況i性別+閩雇傭日期匚是否帶薪
11、+耳休假時間+=病假時間P當前狀態(tài)iRowguid+蠱修改日期Filter_TFilter_F總行數(shù):01霸霸霸儀1盪1髓儀1盪1髓儀11111111I篩選器:I圖4報表設計器ReportBuilder在圖4中,我們可以看到,報表存在一個篩選器選項,此處的篩選器和報表模型中的篩選器有什么聯(lián)系呢?在報表模型中,源字段以及作為派生字段的表達式都比較容易理解,它們最終將出現(xiàn)在報表設計器的字段列表中,而對于篩選器一開始從名稱上先入為主將篩選器理解為:開發(fā)人員在報表模型中定義“篩選器”,該篩選器規(guī)定不同角色、權限的終端用戶只能瀏覽自己的被允許的數(shù)據(jù)。事實上并非如此,報表模型只是DSV中與業(yè)務相關的對象在
12、終端用戶眼里的反應,不具備對不同用戶組進行篩選數(shù)據(jù)的功能(如果需要為不同用戶組篩選數(shù)據(jù),可以通過在DSV中創(chuàng)建命名查詢并以建立不同透視顯示給終端用戶)。在上面已經(jīng)提到過,報表模型中的篩選器是屬性的一種變體,它的IsFilter屬性為True而且其Filter屬性是一個返回邏輯值的表達式,如果其Hidden屬性不為True,那么在報表設計器中也會和其它屬性一樣顯示出來。事實上,這正為終端用戶提供一種更好篩選數(shù)據(jù)的方式:例如,我們規(guī)定可能離職的員工需要滿足的條件是雇員.生日=1980-1-1(年輕人可能更愿意嘗試不同的工作)|雇員.婚姻狀況=False(沒有人能拴住他,呵呵)AND雇員性別=M(既然是他,當然為男性),這是一個比較復雜的邏輯(當然我舉的例子可能不是很恰當),終端用戶可能并不清楚這種邏輯,這就需要開發(fā)人員在報表模型中將上述表達式設置為一個篩選器“Filter是否可能離職”。而報表設計器中的篩選器選項正是為了限定報表中要顯示的數(shù)據(jù),終端用戶只要為報表設置篩選器為“Filter是否可能離職=True”就可以在報表中只顯示可能離職的員工的數(shù)據(jù),而“Filter_是否可能離職”在報表模型中表現(xiàn)為篩選器,而在報表設計器中表現(xiàn)為一個報表可用字段,即報表模型中的篩選器是為了方便終端用戶在報表設計器中更容易地篩選數(shù)據(jù)而存在的。圖5報表模型設計器和報表設計器中
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版委托貸款合同(購車貸款)3篇
- 2025版民間借貸合同文本四種借款人法律義務解讀4篇
- 商鋪售后返租合同風險評估與法律建議(2025年版)2篇
- 2025年度龍山區(qū)中醫(yī)院醫(yī)療廢物處理技術改造合同4篇
- 二零二五年度實木復合地板品牌代理銷售合同4篇
- 2025年物業(yè)管理責任服務協(xié)議書(含物業(yè)合同續(xù)簽)3篇
- 體育場館體育賽事現(xiàn)場安全保衛(wèi)措施與體系建設改進考核試卷
- 體育用品行業(yè)創(chuàng)新商業(yè)模式探索考核試卷
- 2025年農村地房產(chǎn)租賃土地租賃協(xié)議
- 2025年度木材加工與木工安裝服務承包合同4篇
- 土地買賣合同參考模板
- 新能源行業(yè)市場分析報告
- 2025年天津市政建設集團招聘筆試參考題庫含答案解析
- 房地產(chǎn)運營管理:提升項目品質
- 自愿斷絕父子關系協(xié)議書電子版
- 你劃我猜游戲【共159張課件】
- 專升本英語閱讀理解50篇
- 中餐烹飪技法大全
- 新型電力系統(tǒng)研究
- 滋補類用藥的培訓
- 北師大版高三數(shù)學選修4-6初等數(shù)論初步全冊課件【完整版】
評論
0/150
提交評論