在SQL Server 2008中制作報(bào)表
在許多公司里,制作報(bào)表是個(gè)重要的工作。企業(yè)中的主管、業(yè)務(wù)分析師、經(jīng)理、和不斷增長(zhǎng)的信息工作人員依賴于易理解的報(bào)表中獲得的及時(shí)和準(zhǔn)確的信息來(lái)有效的進(jìn)行他們的工作。SQL Server 2008報(bào)表服務(wù)包含全面的報(bào)表制作工具,以及一些創(chuàng)新的報(bào)表格式,可以輕松的創(chuàng)建提供信息的報(bào)表,并采用對(duì)于你的公司來(lái)說(shuō)最有效的格式,提供給雇員所需要的信息。
使用報(bào)表開(kāi)發(fā)工具
在大多數(shù)公司里,有兩組截然不同的人創(chuàng)建報(bào)表;習(xí)慣于工作在全面的開(kāi)發(fā)環(huán)境中的熟練的商業(yè)智能解決方案開(kāi)發(fā)人員,和不熟悉數(shù)據(jù)庫(kù)架構(gòu)設(shè)計(jì)、并需要通過(guò)直觀的報(bào)表設(shè)計(jì)環(huán)境的商業(yè)用戶,這種直觀的報(bào)表設(shè)計(jì)環(huán)境需要將底層復(fù)雜的技術(shù)進(jìn)行抽象。
SQL Server 2008滿足了這兩種需要,它提供了為滿足這兩種用戶的需求而特別設(shè)計(jì)的直接的報(bào)表開(kāi)發(fā)工具。這使得開(kāi)發(fā)人員可以創(chuàng)建用于整個(gè)企業(yè)的復(fù)雜的報(bào)表解決方案,同時(shí)使得商業(yè)用戶可以很容易的專注于與他們的業(yè)務(wù)領(lǐng)域相關(guān)的專門的數(shù)據(jù)。
報(bào)表設(shè)計(jì)器
報(bào)表設(shè)計(jì)器為開(kāi)發(fā)人員和高級(jí)報(bào)表制作人員提供了一個(gè)非常靈活和高效的報(bào)表制作環(huán)境,如圖1所示。報(bào)表設(shè)計(jì)器是SQL Server商業(yè)智能開(kāi)發(fā)套件的一個(gè)組件,SQL Server商業(yè)智能開(kāi)發(fā)套件是一個(gè)基于Microsoft Visual Studio的通用開(kāi)發(fā)界面的商業(yè)智能開(kāi)發(fā)環(huán)境。這個(gè)設(shè)計(jì)界面使得開(kāi)發(fā)人員可以很容易的為一個(gè)報(bào)表定義從多個(gè)數(shù)據(jù)源而來(lái)的數(shù)據(jù)集、設(shè)計(jì)報(bào)表的布局,然后在將它部署到報(bào)表服務(wù)器上之前直接在設(shè)計(jì)環(huán)境中預(yù)覽報(bào)表。開(kāi)發(fā)人員使用報(bào)表向?qū)Э梢钥焖俨⑷菀椎貏?chuàng)建報(bào)表,他們也可以通過(guò)使用報(bào)表設(shè)計(jì)器中的可視化的設(shè)計(jì)環(huán)境建立更廣泛的報(bào)表。內(nèi)置的查詢?cè)O(shè)計(jì)器簡(jiǎn)化了報(bào)表所使用的數(shù)據(jù)集的提取工作,并且可以直接拖拉的設(shè)計(jì)界面使得可以很容易的布置報(bào)表元素用于顯示。當(dāng)一個(gè)開(kāi)發(fā)人員完成了一個(gè)報(bào)表,他們可以預(yù)覽這個(gè)報(bào)表,然后將其直接從報(bào)表設(shè)計(jì)器部署到報(bào)表服務(wù)器上。

圖1:報(bào)表設(shè)計(jì)器
報(bào)表生成器
讓開(kāi)發(fā)人員可以開(kāi)發(fā)強(qiáng)大的、可以部署給上千名用戶的報(bào)表是非常有價(jià)值的,并且為全公司帶來(lái)了一致的、專業(yè)設(shè)計(jì)的報(bào)表。然而,有時(shí)個(gè)別商業(yè)用戶需要能夠修改報(bào)表或甚至是創(chuàng)建他們自己的有特殊要求的報(bào)表。報(bào)表生成器是一個(gè)易于使用,專注于業(yè)務(wù)的報(bào)表查詢工具,它通過(guò)報(bào)表模型抽象了后臺(tái)的業(yè)務(wù)數(shù)據(jù),報(bào)表模型反映了業(yè)務(wù)實(shí)體例如客戶、產(chǎn)品、銷售,等等。報(bào)表生成器如圖2所示。通過(guò)創(chuàng)建一個(gè)模型反映這個(gè)面向業(yè)務(wù)的數(shù)據(jù)視圖,報(bào)表生成器使得商業(yè)用戶可以創(chuàng)建強(qiáng)大的報(bào)表而不需要了解后臺(tái)數(shù)據(jù)庫(kù)結(jié)構(gòu)或查詢語(yǔ)句的全面知識(shí)。
圖2:報(bào)表生成器
#p#
訪問(wèn)用于創(chuàng)建報(bào)表的數(shù)據(jù)源
大多數(shù)公司將數(shù)據(jù)分布在多個(gè)應(yīng)用程序和數(shù)據(jù)庫(kù)中。為了對(duì)業(yè)績(jī)的進(jìn)行充分理解,用戶需要一個(gè)可以從公司的多個(gè)異構(gòu)的數(shù)據(jù)源提取數(shù)據(jù)的報(bào)表解決方案。例如,公司里的銷售主管可能需要一個(gè)結(jié)合了從會(huì)計(jì)部門的Oracle數(shù)據(jù)庫(kù)提取的數(shù)據(jù)和從基于Microsoft SQL Server的CRM 應(yīng)用獲得的客戶數(shù)據(jù)的報(bào)表。SQL Server 2008報(bào)表服務(wù)支持訪問(wèn)用于報(bào)表創(chuàng)建的多個(gè)數(shù)據(jù)源,包括SQL Server關(guān)系數(shù)據(jù)庫(kù)、SQL Server分析服務(wù)、Oracle、DB2和 Hyperion Essbase;而且報(bào)表制作可以將從多個(gè)數(shù)據(jù)源獲得的數(shù)據(jù)結(jié)合到一個(gè)單獨(dú)的報(bào)表中。此外,有了SQL Server 2008報(bào)表服務(wù),報(bào)表制作人員可以從SQL Server關(guān)系數(shù)據(jù)庫(kù)、SQL Server分析服務(wù)多維數(shù)據(jù)集和Oracle數(shù)據(jù)庫(kù)生成要和報(bào)表生成器一起使用的報(bào)表模型。
創(chuàng)建引人注目的報(bào)表
商業(yè)用戶要求能夠靈活地查看和顯示不同類型、不同格式的數(shù)據(jù)。報(bào)表服務(wù)滿足了這一需求,它提供了一組強(qiáng)大的引人注目的報(bào)表制作特性,包括多個(gè)顯示和參數(shù)選項(xiàng)、交互能力、豐富的文本格式、和許多繪制圖表的功能。
查看和與報(bào)表交互時(shí),用戶有不同的需求和期望,而且一個(gè)報(bào)表格式對(duì)某種類型的數(shù)據(jù)可能很適用,但可能不適合于其它類型的數(shù)據(jù)。SQL Server 報(bào)表服務(wù)支持一些顯示選項(xiàng),使你創(chuàng)建的報(bào)表采取最適合用戶需要的顯示形式。
SQL Server 報(bào)表服務(wù)使用數(shù)據(jù)顯示類型來(lái)定義報(bào)表中的數(shù)據(jù)的顯示。你可以使用下面的數(shù)據(jù)顯示類型來(lái)顯示數(shù)據(jù):
◆列表。一個(gè)隨意形式的數(shù)據(jù)顯示。
◆圖表。圖形格式,它以圖表的形式顯示數(shù)據(jù)。
◆表。表格格式,在這種格式下,數(shù)據(jù)按行和列顯示。你可以創(chuàng)建具有層次結(jié)構(gòu)的一些行來(lái)反映你所有的數(shù)據(jù)分組和顯示分組。
◆矩陣。這是一個(gè)支持行和列分組的格式,它可以在行和列的交叉單元格里顯示合計(jì)的總數(shù)據(jù),類似于樞軸表或交叉表。
◆Tablix. 一個(gè)混合了表和矩陣的格式,隨著SQL Server 2008報(bào)表服務(wù)的發(fā)布而推出。
Tablix
如上面所提到的,SQL Server 2008推出了一個(gè)新的數(shù)據(jù)顯示類型,叫做Tablix 。正如名字所顯示的,Tablix 是表和矩陣數(shù)據(jù)類型的最佳功能的結(jié)合。Tablix 使你可以創(chuàng)建一個(gè)靈活的具有多個(gè)行和列的分組布局的報(bào)表,可以很容易的建立通用的報(bào)表顯示,而對(duì)于使用目前的市場(chǎng)中可用的報(bào)表制作工具來(lái)說(shuō),這些新功能是很難或不可能完成的。有了Tablix ,你可以建立的報(bào)表包括以下內(nèi)容:
◆固定的和動(dòng)態(tài)的行和列。在一個(gè)表里,一個(gè)報(bào)表可以有動(dòng)態(tài)的行,在這些行里可以有重復(fù)和內(nèi)嵌的組,但是列是固定的。在一個(gè)矩陣?yán)?,一個(gè)報(bào)表可以有動(dòng)態(tài)的行和列,但是不能包含固定的行和列。有了Tablix ,這些限制就沒(méi)有了,報(bào)表既可以包含動(dòng)態(tài)的行和列,也可以包含固定的行和列。
◆在行和列上都可以進(jìn)行隨機(jī)嵌套。在之前的報(bào)表服務(wù)的版本中,當(dāng)用戶使用表的時(shí)候,只可以對(duì)行進(jìn)行隨機(jī)嵌套。隨著Tablix的推出,隨機(jī)嵌套在行和列上都可以使用了。
◆可選擇省略行和列的頭。因?yàn)門ablix 提供了表和矩陣的所有有用的功能,報(bào)表制作者可以省略行和列的頭。這個(gè)技術(shù)在先前只能用在矩陣?yán)铮辛薚ablix ,它也可以用在表上了。
◆在每一級(jí)上有多個(gè)并行的行和列。在同一個(gè)報(bào)表里應(yīng)用多個(gè)并行的行和列的能力是一個(gè)新的獨(dú)特的設(shè)計(jì)特性,它可以顯著的改善報(bào)表中信息的顯示方式。例如,當(dāng)設(shè)計(jì)一個(gè)銷售報(bào)表時(shí),報(bào)表制作者可以選擇讓一個(gè)顯示年的列具有一個(gè)動(dòng)態(tài)的層次關(guān)系,它之后有一個(gè)動(dòng)態(tài)的產(chǎn)品列,如下面的插圖所示。注意這兩個(gè)層級(jí)關(guān)系雖然相鄰顯示,但卻是各自獨(dú)立的,同時(shí)共享同一行的數(shù)據(jù)值。
| 
 地區(qū)銷售報(bào)表  | 
 年份  | 
 產(chǎn)品  | |||
| 
 2005  | 
 2006  | 
 桌子  | 
 椅子  | ||
| 
 華盛頓州  | 
 西雅圖  | 
 50  | 
 60  | 
 20  | 
 30  | 
| 
 斯波坎市  | 
 30  | 
 40  | 
 10  | 
 20  | |
| 
 俄勒岡州  | 
 波特蘭  | 
 40  | 
 50  | 
 10  | 
 10  | 
| 
 尤金  | 
 20  | 
 30  | 
 25  | 
 5  | |
圖標(biāo)
大量復(fù)雜的文本格式的數(shù)據(jù)對(duì)于用戶來(lái)說(shuō)是很難理解的。隨著在報(bào)表服務(wù)中對(duì)新的可視化能力的大量投入,SQL Server 2008提供了一個(gè)增強(qiáng)了的制圖引擎,其中包括許多豐富的圖表,使得決策者可以以一種友好的格式來(lái)查看數(shù)據(jù),并可以立即使他們看到這個(gè)大圖。報(bào)表服務(wù)提供給用戶許多圖表類型,包括傳統(tǒng)的條狀圖、區(qū)域圖、列、環(huán)狀圖、線、和餅圖。報(bào)表服務(wù)2008還包括對(duì)區(qū)域評(píng)測(cè)類型圖表的支持,有多圖表區(qū)域和圖例、全距圖、極區(qū)圖、雷達(dá)圖、錐形圖、漏斗圖。圖表的增強(qiáng),例如注釋和對(duì)大型數(shù)據(jù)的支持,為你的報(bào)表環(huán)境提供了更好的靈活性。
交互功能
SQL Server 2008報(bào)表服務(wù)提供了一些報(bào)表設(shè)計(jì)功能使得開(kāi)發(fā)人員可以創(chuàng)建具有高度動(dòng)態(tài)性的報(bào)表,這些報(bào)表為用戶提供了更加深入的數(shù)據(jù)交互以及顯示的能力??梢蕴砑拥綀?bào)表中的交互式元素包括:
◆參數(shù)。給報(bào)表添加參數(shù)使得在報(bào)表被處理的時(shí)候,用戶可以提供他指定的值以便過(guò)濾報(bào)表中顯示的信息。例如,一個(gè)用戶可以為一個(gè)銷售報(bào)表提供一個(gè)區(qū)域參數(shù)值,使得只查看在指定區(qū)域的銷售記錄。參數(shù)幫助報(bào)表制作者用一個(gè)報(bào)表獲得更廣泛的用戶群,并提供給用戶更靈活和交互性更強(qiáng)的體驗(yàn)。
◆交互式排序。對(duì)報(bào)表應(yīng)用排序功能使得用戶可以按報(bào)表所包含的任一列數(shù)據(jù)按升序或降序排列。例如,一個(gè)用戶查看一個(gè)包含銷售信息的報(bào)表,他可能先按日期排列數(shù)據(jù),然后按銷售數(shù)量排序。
◆操作。開(kāi)發(fā)人員可以給報(bào)表添加鏈接,使得用戶可以執(zhí)行動(dòng)作,例如跳轉(zhuǎn)到報(bào)表中的另一部分、打開(kāi)一個(gè)外部網(wǎng)頁(yè)、或打開(kāi)另一個(gè)相關(guān)的報(bào)表以便執(zhí)行鉆透分析。例如,一個(gè)報(bào)表可能列出了本月訂單的訂單號(hào)、客戶名稱和銷售數(shù)量。報(bào)表開(kāi)發(fā)人員可以添加一個(gè)鉆透動(dòng)作到這個(gè)報(bào)表中以便用戶點(diǎn)擊了某一訂單的訂單號(hào)之后,可以打開(kāi)一個(gè)顯示這個(gè)訂單細(xì)節(jié)的報(bào)表。
◆文檔結(jié)構(gòu)圖。用戶使用一個(gè)文檔結(jié)構(gòu)圖輕松的操縱報(bào)表。文檔結(jié)構(gòu)圖在報(bào)表中顯示為一個(gè)側(cè)面面板,用戶可以使用它包含的層次鏈接移動(dòng)到報(bào)表的各個(gè)部分。
◆子報(bào)表。開(kāi)發(fā)人員可以將一個(gè)報(bào)表內(nèi)嵌到另一個(gè)報(bào)表之中作為一個(gè)子報(bào)表;報(bào)表服務(wù)的一個(gè)強(qiáng)大功能是讓開(kāi)發(fā)人員可以將一個(gè)報(bào)表中的信息直接作為另一個(gè)報(bào)表的一部分來(lái)顯示。例如,一個(gè)開(kāi)發(fā)人員可能創(chuàng)建一個(gè)顯示公司內(nèi)所有銷售區(qū)域的報(bào)表,而它有一個(gè)子報(bào)表顯示每一個(gè)區(qū)域的銷售情況。
【編輯推薦】















 
 
 
 
 
 
 