ActiveReports 報表應用教程 (11)---互動式報表之文件目錄

葡萄城技術團隊發表於2013-07-03

通過文件目錄,使用者可以非常清晰的檢視報表資料結構,並能方便地跳轉到指定的章節,最終還可以將報表匯出為PDF等格式的檔案。本文以2012年各月產品銷售分類彙總報表為例,演示如何在葡萄城ActiveReports報表控制元件實現文件目錄。

1、建立報表檔案

在應用程式中建立一個名為 rptMonthlySalesByCategory.cs 的 ActiveReports 報表檔案,ActiveReports 區域報表(基於程式碼)。

2、建立報表資料來源

點選該圖示以建立報表資料來源,我們使用的資料來源是原始碼工程中 Data 目錄下的 NWind_CHS.mdb,在開啟的報表資料來源對話方塊中,選擇”提供程式”選項卡,點選建立連線按鈕以開啟“資料連結屬性”對話方塊,並選擇 “Microsoft Jet 4.0 OLE DB Provider”資料提供器,點選“下一步”按鈕切換到 “連線”選項卡,點選“…”按鈕定位到 NWind_CHS.mdb 檔案,然後點選“確定”按鈕以完成建立據源的操作。

回到“OLE DB”選項卡之後在查詢區域輸入一下 SQL 語句:

SELECT

DATEPART("yyyy",訂單.訂購日期)

AS

訂購年, DATEPART("m",訂單.訂購日期)

AS

訂購月, 類別.類別名稱, 類別.說明, 產品.產品名稱, 訂單明細.數量, 訂單明細.單價, 訂單明細.折扣

FROM

(( 訂單

INNERJOIN

訂單明細

ON

訂單.訂單ID = 訂單明細.訂單ID)

INNERJOIN

產品

ON

訂單明細.產品ID = 產品.產品ID)

INNERJOIN

類別

ON

產品.類別ID = 類別.類別ID

WHERE

DATEDIFF("yyyy",訂單.訂購日期,'2012-01-01') = 0

ORDERBY

DATEPART("yyyy",訂單.訂購日期), DATEPART("m",訂單.訂購日期), 類別.類別ID, 訂單明細.產品ID

 

3、設計報表介面

3.1、在報表設計介面中點選滑鼠右鍵,並選擇插入->組頭/組尾,此報表中需要插入三級分組,然後設定以下屬性:

groupHeader1 DataField=訂購月
GroupKeepTogether=FirstDetail
RepeatStyle=OnPage
groupHeader2 DataField=類別名稱
GroupKeepTogether=FirstDetail
RepeatStyle=OnPage
groupHeader3 DataField=產品名稱
GroupKeepTogether=FirstDetail
RepeatStyle=OnPage

 

3.2、在報表後臺程式碼中新增以下程式碼,用於設定報表目錄:

private void groupHeader1_Format(object sender, EventArgs e) { this.groupHeader1.AddBookmark(txt訂購月1.Text); }


private void groupHeader2_Format(object sender, EventArgs e) { this.groupHeader2.AddBookmark(txt訂購月1.Text + "\\" + txt類別1.Text); }

 

4、執行程式

ActiveReports 報表功能展示 文件目錄

線上演示及原始碼下載地址:


http://www.gcpowertools.com.cn/products/activereports_demo.htm
ActiveReports 報表功能展示

 

相關閱讀:

【報表福利大放送】100餘套報表模板免費下載 

 矩表 - 現代資料分析中必不可少的報表工具

 

相關文章