999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于FastReport圖片報表的設計與實現

2008-12-31 00:00:00董麗麗
電腦知識與技術 2008年34期

摘要:簡要介紹了FastReport報表設計器并重點討論了其特點和設計步驟,同時在Microsoft Visual Studio 2005環境下,以FastReport設計的圖片報表模板為例,詳細描述了設計和實現報表的整個過程,最后給出了實例代碼。FastReport是一組方便靈活的報表工具控件,它包含報表引擎、報表設計器、報表預覽控件。因此使用FastReport制作的報表滿足了報表的靈活性、可維護性等要求,同時解決了當前國內報表格式復雜多樣、設計難度大等問題。

關鍵詞:FastReport;圖片報表; 報表模板;控件

中圖分類號:TP311文獻標識碼:A 文章編號:1009-3044(2008)34-1653-02

Design and Implementation of Universal Report System Based on FastReport

HAN Yu, DONG Li-li

(Information Control Engineering college, Xi'an University of Architecture Technology, Xi'an 710055, China)

Abstract: FastReport and discusses principles emphatically and design steps were introduced. In the environment of Microsoft Visual Studio 2005, as an example of image report in the design of FastReport, it details how the process of designing and showing image report is realized in the system. The demo codes are provided in this paper. FastReport is a convenient and flexible control, which contains report engine, report designer, preview report control. So the solution project can meet the requirement of universal flexibility and maintenability of the report, and also solve all kinds of complex report and the difficulty of designing report in current.

Key words: FastReport; image report; report model; control

1 背景和意義

報表是管理信息系統的重要組成部分,其作用是將生產層、市場層等管理活動過程中的原始數據經過信息加工后轉換成有用信息,為決策者做出的正確決策提供支持和幫助[1]。在系統運行中,用戶在很大程度上是以生成系統報表的方便性和靈活性兩個指標來評價系統的成功與否。針對傳統報表系統格式復雜多樣、設計難度大等方面的不足,本文引入了FastReport報表設計器,它包含一組方便靈活的報表工具控件,同時內嵌強大的類Pascal腳本語言解釋程序,并且包含非常吸引人的用戶界面等,從而在很大程度上彌補了傳統報表的不足[2]。

2 FastReport的特點和設計步驟

2.1 FastReport的特點

FastReport(簡稱FR)是一組方便靈活的報表工具控件,它包含報表引擎、報表設計器、報表預覽控件。FR設計器提供了Text、Band、Picture、Supreport、RIChText、CheckBox、OLE、Chart及Barodoe等對象,同時內嵌強大的類Pascal腳本語言解釋程序,并且引入了非常吸引人的用戶界面,使用最新的用戶界面組件,例如可停靠的工具欄。用戶可以任意使用這個設計器,只需使用鼠標就可以創建大多數報表[3]。

2.2 FastReport的設計步驟

創建和設計報表由下面幾步構成,如圖1所示:

圖1 FastReport設計步驟[2]

2.2.1 數據

大多數報表是從數據庫中查找數據。Delphi本身提供了高效地數據庫訪問機制。這些機制也同樣適用于FastReport。TTable和TQuery組件也可以作為報表的數據源。總的來說它可以使用任何一個從TdataSet組件繼承的子類。除了數據,存儲在數據庫中,FastReport事實上可以使用任何數據源(數組,文件,字符網格等等)。在這種情況下,程序必須自己控制非數據庫源的存取。在FastReport中有一些事件集允許程序傳遞數據到FastReport的核心。

數據的存取與所有的報表生成器類似。所有的報表生成器都能處理放在項目窗體上的數據感知控件。除了存取數據,FastReport允許在運行時創建新的控件。在FastReport中,設計者可以放置控件在窗體上,并在對象觀察器中改變它的屬性。控件的感知是非常靈活的:它能夠簡單地創建新的對象用于支持不同的數據引擎。

2.2.2 參數

用戶可以輸入參數。例如用戶可以輸入這些:數據范圍,一個學校名稱,一個學校代號等等。少數報表不在所有的頁中使用參數或使用固定的參數(不需要在對話框中取值)。參數的處理在報表生成器中有不同的實現。

FastReport允許最終用戶開發對話框:有一組標準控件,并能被拖放到對話框窗體上。如果需要,也可以改變它們的屬性。同樣,FastReport內置語言允許使用偽Pascal腳本語言創建對話框,并輸入變量到核心部分。

2.2.3 窗體

報表窗體本身就是描述怎樣可以看到正確的報表。為了實現報表分組區域, FastReport引入了“區域”的概念。有兩種類型的區域:服務器型區域(報表頭,頁碼)和用于報表的多行格式化文件部門的區域(數據區域)。數據區域連接到數據源,內容是數據源中的記錄。

報表開發的可視化環境——設計器——是用于構建報表的。設計器的界面由工具欄組成(Toolbars),而且可以根據需要改變它們的位置。

2.2.4 處理

在構建報表的時候,需要處理輸入的數據,報表窗體或者控件的修改。例如這樣一個處理,用紅色來顯示某些數據區域重要的數據。把這些數據區域的屬性中的字體顏色設置成紅色就可以實現了。

2.2.5 準備報表

準備報表是激活FastReport的核心處理并能在點擊“預覽”按鈕后進行預覽的過程。與大多數報表生成器不同,它們的報表頁面內容保存在圖元文件(EMF格式的圖像),在FastReport中準備好的報表是一組對象的集合,描述報表處理后各頁面所包含的內容。這允許可以修改生成的報表頁面,通過在設計器中調用所需的頁面[4]。

在FastReport的預覽窗口中還有一點與其它報表生成器不同。在細節方面,FastReport預覽文檔類似于Microsoft Word:在一個窗口中可以立即看到多個頁面。

3 基于FastReport的圖片報表設計

下面以一個圖片報表為例,在Microsoft Visual Studio 2005(VS2005)環境下,具體說明使用FastReport創建和實現圖片報表的過程。

3.1 圖片報表模板的設計

這個圖片報表主要是用來顯示每一種魚的照片和信息等。要創建這樣一個圖片報表,首先,在報表設計器的左邊一列有很多控件,用戶可以直接選擇“標題”、 “頁標頭”、 “主項數據”、 “頁注腳”等控件band到頁面上,然后在它上面放置所需的對象。在“頁標頭”上放置的對象在查詢結果顯示的每一頁都會顯示其信息。“主項數據”這一欄會顯示查詢的每一條信息,當數據量大時會自動進行分頁處理。“頁注腳”用來顯示頁碼。這里需要注意的是:在“主項數據”這一欄中在屬性中需要添加數據源,在圖2中的“BioDS”就是數據源;在“主項數據”上面放置的“圖片”控件是用于圖片的顯示,這個控件也是需要添加左邊一列的控件band到頁面上的。

設計完這些后,如果按設計器中的預覽按鈕,就會看到標題“Fishes”行在綠色的背景上,頁面頭“Fabourite fishes of Inprise Corp.”在標題“Fishes”下面顯示,“頁注腳”也會顯示“1”。這是因為 “主項數據”區域雖然設置了數據源“BioDS”,但數據源“BioDS”沒有數據。只有“主項數據”區域連接到有數據的數據源“BioDS”,“主項數據”區域才能顯示信息。

3.2 在VS2005環境下的設置

在VS2005環境下,創建一個用來瀏覽這個圖片報表的Web網站時,需要添加ReportMachine.webreport.dll控件到“工具箱” 的“.NET Framework 組件”中。完成以上步驟后,只需用鼠標拖動“工具箱”中的“RMWebReportEngine控件”到Web窗體頁面就可以了,RMWebReportEngine控件是一個報表引擎。

3.3 實現報表的核心代碼和圖片報表的顯示

下面是“主項數據”區域連接到有數據的數據源“BioDS”的核心代碼,它經過VS2005環境調試通過。

RMEngine.InitEngine();//報表引擎初始化

RMEngine.AddDataSet(\"BioDS\", ds.Tables[0]); //添加查詢結果給數據源

RMEngine.SetReportFile((String)Application[\"RootPath\"]+ \"image.rmf\", 1);

//鏈接到報表模板

RMEngine.ViewerVersion = (String)Application[\"ViewerVersion\"];

//報表引擎版本號

RMEngine.ViewerFileName = (String)Application[\"ViewerFileName\"];

//報表引擎版本名

這樣“主項數據”區域就可以顯示信息了。圖3是在VS2005下生成的圖片報表。

4 總結

利用FastReport設計器可以設計多種報表。本文以圖片報表為例,詳細地描述了FastReport的特點、設計思想、創建報表模板的過程,并在VS2005環境下實現了基于Web 服務器端的報表。

通過上述實例,可以看出FastReport強大的功能,可以快速靈活的使用,在很大程度上減少MIS系統開發和維護的工作量,減少報表設計人員的工作量,給系統開發人員和設計人員的工作提供了便利,大大地提高了系統開發和維護的效率。

參考文獻:

[1] 張向群,張一品.基于FastReport組件的復雜報表的設計與實現[J].許昌學院學報,2005(9).

[2] 葛濤.Delphi中運用FastReport設計和制作報表[J].微型電腦應用,2004(3).

[3] 趙明炬,周柏青.FastReport分組報表開發技術研究[J].吉林化工學院學報,2006(8).

[4] FastReport設計器使用指南[S].天網軟件2006:7-11.

主站蜘蛛池模板: 曰韩人妻一区二区三区| 久久婷婷六月| 狠狠干欧美| 国产成人精品无码一区二| 国产aaaaa一级毛片| 精品三级在线| 久久综合五月| 国产男女免费视频| 国产最新无码专区在线| 欧美日韩国产成人在线观看| 久久久久久久97| 日韩精品免费在线视频| 亚洲成a∧人片在线观看无码| 午夜a视频| 97久久人人超碰国产精品| 性做久久久久久久免费看| 性网站在线观看| 亚洲第一成年人网站| 玩两个丰满老熟女久久网| 亚洲欧洲自拍拍偷午夜色无码| 天堂中文在线资源| 国产在线八区| 热re99久久精品国99热| 992tv国产人成在线观看| 成年人久久黄色网站| 爽爽影院十八禁在线观看| 91破解版在线亚洲| 成人一区在线| 五月六月伊人狠狠丁香网| 国内黄色精品| 免费观看三级毛片| 99伊人精品| 99精品一区二区免费视频| 亚洲精品卡2卡3卡4卡5卡区| 国产精品视频a| 国产一区在线视频观看| 在线精品欧美日韩| 热热久久狠狠偷偷色男同| 超碰免费91| 国产剧情无码视频在线观看| 国产香蕉在线| 国产最新无码专区在线| 国产精品第一区在线观看| 久久99国产综合精品女同| av在线人妻熟妇| 中国精品久久| 久久一级电影| 好吊色国产欧美日韩免费观看| 亚洲中文在线视频| 一本大道香蕉高清久久| 亚洲视频免费在线看| 国内精品久久人妻无码大片高| 国产玖玖玖精品视频| 日本不卡在线视频| 中文字幕亚洲精品2页| 99久久精品国产麻豆婷婷| 久久精品国产电影| 久久久黄色片| 免费无码网站| 国产精品色婷婷在线观看| 国产欧美高清| 国产91精选在线观看| 3D动漫精品啪啪一区二区下载| 免费毛片全部不收费的| vvvv98国产成人综合青青| 亚洲香蕉在线| 青青国产成人免费精品视频| 欧美激情成人网| 免费看久久精品99| 国产一区二区三区视频| 无码AV日韩一二三区| 亚洲va在线观看| 91娇喘视频| 亚洲欧洲日韩综合| 成人国产精品2021| 国产第一福利影院| 中文字幕日韩丝袜一区| 青青国产在线| 国产精品丝袜在线| 婷婷中文在线| 国产特一级毛片| 国产内射一区亚洲|