Chapter 6 EEP 2010報表設計
——使用Crystal Reports
uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
本章說明內容之大綱摘要:
Ø 6-1單檔報表的設計
Ø 6-2單檔報表的設計(ClientQuery)
Ø 6-3Label設計(單檔)
Ø 6-4單據設計
Ø 6-5統計報表設計
在Visual Studio中,內建有Crystal Report工具做為開發報表上的工具在EEP中,同樣我們可以InfoDataSet接上A/P Server來達到3-Tier的方式取得Crystal Report所要的資料,我們就先說明一下Crystal Report的基本架構,以方便下文的報表設計的觀念瞭解。
q 安裝
在過往的VS中CrystalReport作爲一組常用插件,在VS安裝過程中可以通過選擇設定來決定是否進行安裝。在新版本的VS2010中CrystalReport將被脫離出VS自帶安裝包,因此我們需要在
http://www.businessobjects.com/jump/xi/crvs2010/default.asp下載安裝包。
q DataSource資料源
通過EEP的A/P Server端的InfoCommand把資料表從DataBase中取出放入到Client端的InfoDataSet中,然後透過滑鼠右鍵InfoDataSet的Save To Report功能,產生一個Xml檔當做CrystalReport的DataSet來使用。這個檔案只有結構沒有資料內容,結構只是用在CrystalReport的DesignTime(設計模式中),在DesignTime的時候透過這個Xml當作CrystalReport的DataSet,就可以把所需要的欄位元拖到CrystalReport的各個Section(區域)中。
最後在執行的時候透過CrystalReport的SetDataSource功能將InfoDataSet的資料交給CrystalReport內的DataSource。總之,CrystalReport的資料也透過InfoDataSet來向A/P Server取得資料內容,再以CrystalReport的DataSource來列印出來。
q Section區域
1. PH(PageHeader):報表之表頭區域,又稱為PH區。本區將於印表時每頁固定印出。與PF(PageFooter)、DT(Detail)共稱報表三大區。
2. DT(PageDetail):報表的明細欄位元通常皆放在此區,其內可再搭配SubReport列印次階資料。
3. PF(PageFooter):報表之表尾區域,又稱為PF區。本區是報表每頁固定印出的區域,與PH(PageHeader)類似。
4. RH(ReportHeader):列印的位置於整份報表的第一頁。
5. RF(ReportFooter):列印的位置於整份報表的最後一頁。
6. GH(GroupHeader):群組報表之表頭區域GH。本區域除了用來定義分階關係外,尚可用來貼上群組所要列印的群組表頭元件,製作出多階報表。群組分階列表,共有兩種模式,一種以單階用索引值來分割上下階關係(相同鍵值為同階);另一種則為多檔以一對多關聯來對應上下階關係,兩者不能混合使用,各有其用途。
7. GF:群組報表之表尾區域,在本區域可配合SUM元件來處理群組加總值。而且此區域要與GH相對應。
8. SUBREPORT:多階報表中,除了可使用GH/GF群組方式來設計外,尚可以利用SUBREPORT來輸出明細資料。通常是用在(2階以上)次階層資料表中使用之。
Converted from CHM to HTML with chm2web Pro 2.85 (unicode) |