原創(chuàng)|對(duì)比評(píng)測(cè)|編輯:鄭恭琳|2018-03-27 14:08:09.000|閱讀 823 次
概述:本文將讓您了解報(bào)告生成器SQL Server Reporting Services和FastReport .Net分別提供了哪些功能,并且分析對(duì)比這些功能的優(yōu)缺點(diǎn)。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
電子和打印報(bào)表應(yīng)用于我們生活的許多領(lǐng)域。你能想象沒有年度報(bào)表的會(huì)計(jì)嗎?還是沒有發(fā)票的運(yùn)輸公司?無(wú)論如何,報(bào)表對(duì)生產(chǎn)和商業(yè)都非常重要。這就是為什么報(bào)表生成器程序與DBMS一樣重要。但是,除了各種DBMS之外,不同的報(bào)表生成器都有其優(yōu)點(diǎn)和缺點(diǎn)。
讓我們分析對(duì)比一下很久以前在軟件市場(chǎng)已經(jīng)公認(rèn)下來(lái)的兩個(gè)明智的報(bào)告代表:
與SSRS相反,我故意采用一個(gè)不太知名的FR.Net。比較來(lái)自軟件市場(chǎng)領(lǐng)導(dǎo)者和小公司的產(chǎn)品是很有趣的。
在本文中,我們將對(duì)這兩個(gè)產(chǎn)品進(jìn)行一系列比較和測(cè)試。由于文章的內(nèi)容很多,我建議將它分成三個(gè)部分。
在本文的第一部分中,您將了解在這兩個(gè)報(bào)表生成器中提供了哪些功能。
讓我們從用戶界面開始——報(bào)表設(shè)計(jì)器。公平地說(shuō),報(bào)表設(shè)計(jì)器可以被認(rèn)為是報(bào)表生成器中最重要的組件。用戶對(duì)整個(gè)產(chǎn)品的態(tài)度取決于創(chuàng)建報(bào)告的便利性。讓我們看看Reporting Services前端界面:
圖片中的所有內(nèi)容看起來(lái)都很簡(jiǎn)潔明了。它是以MS Office 2007的風(fēng)格完成的。必須提到的是,在單獨(dú)的選項(xiàng)卡上按工具分組的工具欄是一個(gè)非常好的主意。現(xiàn)在這種風(fēng)格被許多用戶采用。使用MS Office的人將很快掌握這個(gè)界面。左側(cè)是中心的報(bào)告數(shù)據(jù)——工作區(qū)域。在這樣的設(shè)計(jì)器中創(chuàng)建報(bào)告會(huì)很容易。
現(xiàn)在看看FR.Net設(shè)計(jì)器:
前兩個(gè)截圖有什么相似之處嗎?在最后一個(gè)中,上面的工具欄用于MS Office 2007風(fēng)格。在左側(cè)有一個(gè)組件面板,而在右側(cè)有一個(gè)數(shù)據(jù)樹。中間有一個(gè)工作區(qū)。一切都很容易被理解和使用。但是,報(bào)告模板體系結(jié)構(gòu)中有一個(gè)功能——bands。這些容器是為了達(dá)到預(yù)期目的劃定信息的容器。在FR.Net開發(fā)之初,這需要時(shí)間才能理解,但這種方法的優(yōu)點(diǎn)將這些成本降低了。
兩種設(shè)計(jì)器都可以理解并且易于使用。
現(xiàn)在我們來(lái)看看生成器在創(chuàng)建報(bào)告時(shí)的基本功能。
在下表中列出了以下功能:
功能 | SSRS | FR.Net |
---|---|---|
多個(gè)報(bào)告頁(yè)面 | √ | |
對(duì)話窗體頁(yè)面 | √ | |
內(nèi)置報(bào)告腳本 | √ | √ |
超鏈接嵌入 | √ | √ |
事件處理程序 | √ | |
表達(dá)式 | √ | √ |
從右到左的文字支持 | √ | √ |
UI的本地化 | √ | √ |
無(wú)限頁(yè)面 | √ | |
交互式報(bào)告 | √ | √ |
最終報(bào)告修改 | √ |
讓我們?cè)敿?xì)考慮這些功能:
多個(gè)報(bào)告頁(yè)面。通常,我們?cè)陧?yè)面上創(chuàng)建報(bào)告模板。然后,在構(gòu)建報(bào)告時(shí),該模板將被填滿數(shù)據(jù)。如果數(shù)據(jù)不適合一個(gè)頁(yè)面,則會(huì)創(chuàng)建一個(gè)新頁(yè)面,等等。(多頁(yè)報(bào)告是另外一回事)。
這是指具有不同模板的多個(gè)頁(yè)面。例如,第一頁(yè)是標(biāo)題頁(yè),第二頁(yè)是目錄,第三頁(yè)是內(nèi)容。因此,您的報(bào)告由三個(gè)頁(yè)面組成,每個(gè)頁(yè)面都填充了自己的數(shù)據(jù)。借助此功能,您可以創(chuàng)建完整的文檔,如小冊(cè)子。
對(duì)話窗體頁(yè)面——表單,通常在報(bào)表生成之前顯示。這些表格用于向用戶請(qǐng)求數(shù)據(jù)。例如,您可以通過(guò)輸入值對(duì)其進(jìn)行過(guò)濾或設(shè)置輸出列的數(shù)量。此功能可避免使用預(yù)設(shè)報(bào)表的方式創(chuàng)建特殊應(yīng)用程序。
內(nèi)置報(bào)告腳本??偸怯腥蝿?wù)的情況時(shí)有發(fā)生,這是報(bào)表設(shè)計(jì)人員的標(biāo)準(zhǔn)工具所無(wú)法做到的。例如,復(fù)雜的計(jì)算字段或構(gòu)建報(bào)告中的特定邏輯,具體取決于數(shù)據(jù)。報(bào)告腳本中提供了幫助。它允許您在程序代碼中使用報(bào)表對(duì)象。該功能極大地?cái)U(kuò)展了報(bào)告生成器的功能,使其具有靈活性。
超鏈接有助于為報(bào)告提供一些交互性。用戶將能夠點(diǎn)擊指向報(bào)告中指定位置的鏈接,或者接收所選數(shù)據(jù)的詳細(xì)頁(yè)面。
表達(dá)式——根據(jù)數(shù)據(jù)或借助內(nèi)置函數(shù)(數(shù)學(xué)、文本等)創(chuàng)建任意表達(dá)式的能力。例如,使用表達(dá)式可以添加必需字段的所有值以顯示總金額,或?qū)⑷掌谵D(zhuǎn)換為另一種格式。報(bào)表中的表達(dá)式是非常重要的工具,沒有它們就只能以原始形式從源輸出數(shù)據(jù)。
從右向左支持文本與阿拉伯文語(yǔ)言相關(guān),文本從右向左書寫。這樣的功能應(yīng)該在每個(gè)“self-respected”的報(bào)告生成器中實(shí)現(xiàn)。
用戶界面的本地化——可以選擇所需的本地化語(yǔ)言。支持的語(yǔ)言越多,擁有此報(bào)告生成器的潛在用戶就越多。
無(wú)限頁(yè)面——可以設(shè)置報(bào)表頁(yè)面的無(wú)限寬度和高度。因此,您可以在沒有分頁(yè)符的情況下打印大型表格和矩陣。這在網(wǎng)絡(luò)報(bào)告中很方便,或者如果您不打算打印報(bào)告。
交互式報(bào)告——響應(yīng)用戶操作的報(bào)告。它可以是超鏈接、書簽、下拉列表、彈出消息。
最終報(bào)告修改——修改報(bào)告而不重建的能力。這是使用報(bào)告腳本實(shí)現(xiàn)的。
上表顯示,F(xiàn)R.Net在某些方面領(lǐng)先于SSRS。來(lái)自Microsoft的產(chǎn)品不允許您使用多個(gè)頁(yè)面模板創(chuàng)建報(bào)告。另外,它無(wú)法訪問(wèn)無(wú)限頁(yè)面。報(bào)告始終顯示在固定大小的頁(yè)面上。再者,您將無(wú)法修改構(gòu)建的報(bào)告,盡管這是一個(gè)相當(dāng)奇特的需求。
我想提一下對(duì)話表格。在SSRS中,此表單顯示在報(bào)表頂部,而在FR.Net中——作為構(gòu)建報(bào)表之前的單獨(dú)表單。從這個(gè)表單中,你可以調(diào)用另一個(gè)表單,這可以讓你使報(bào)表更加合理。
根據(jù)創(chuàng)建報(bào)告中功能的比較結(jié)果,FastReport的優(yōu)勢(shì)非常明顯。也許這是該公司在開發(fā)報(bào)告生成器方面的最大經(jīng)驗(yàn),因?yàn)樗?1世紀(jì)初創(chuàng)建了它的第一個(gè)生成器,而微軟在2004年創(chuàng)建了它的第一個(gè)生成器。
產(chǎn)品介紹 | 下載試用 | 優(yōu)惠活動(dòng) | | 聯(lián)系Elyn
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn