在葡萄城ActiveReports報表中除了提供對資料來源進行排序的功能之外,還提供了終端使用者排序功能,終端使用者可以對報表進行區域內排序和整個資料來源排序,結合資料鑽取、過濾等功能可以讓使用者更方便地分析報表資料。
1、建立報表檔案
在應用程式中建立一個名為 rptProductListForSort.rdlx 的 ActiveReports 報表檔案,使用的專案模板為 ActiveReports 頁面報表,建立完成之後從 VS 的報表選單項中選擇轉換為連續頁面佈局(CPL)報表,將固定頁面報表轉換為連續頁面報表。
2、開啟報表資源管理器,並按照以下資訊建立報表資料來源
名稱: | NWind_CHS |
型別: | Micorsoft OleDb Provider |
OLE DB 提供程式: | Microsoft.Jet.OLEDB.4.0 |
伺服器或檔名稱: | Data\NWind_CHS.mdb |
3、 新增資料集
在新建的 NWind_CHS 資料來源上滑鼠右鍵並選擇新增資料集選單項
常規-名稱:Products
查詢-查詢:
SELECT
產品.*, 類別.類別名稱,類別.說明
FROM
產品
INNERJOIN
類別
ON
產品.類別ID = 類別.類別ID
ORDERBY
類別.類別ID;
4、設計報表介面
從 Visual Studio 工具箱中將 Table 控制元件新增到報表設計介面,並將 Products 資料集中的欄位拖拽到 Table 的相應列中,得到的設計介面如下:
5、為列頭單元格新增動態排序功能
選擇列頭單元格,在屬性對話方塊中的命令區域點選屬性對話方塊,以開啟文字框屬性設定對話方塊,並在互動式排序頁面中分別設定以下屬性:
產品名稱列: | 為文字框新增互動式排序功能:True 排序表示式:=[產品名稱] 資料區域或分組排序:選擇資料區域或者分組,Table1_Group1 在此範圍內的評估排序表示式:當前範圍 |
單位數量列: | 為文字框新增互動式排序功能:True
排序表示式:=[單位數量] 資料區域或分組排序:選擇資料區域或者分組,Table1_Group1 在此範圍內的評估排序表示式:當前範圍 |
單價列: | 為文字框新增互動式排序功能:True
排序表示式:=[單價] 資料區域或分組排序:選擇資料區域或者分組,Table1_Group1 在此範圍內的評估排序表示式:當前範圍 |
庫存量列: | 為文字框新增互動式排序功能:True
排序表示式:=[庫存量] 資料區域或分組排序:選擇資料區域或者分組,Table1_Group1 在此範圍內的評估排序表示式:當前範圍 |
訂購量列: | 為文字框新增互動式排序功能:True
排序表示式:=[訂購量] 資料區域或分組排序:選擇資料區域或者分組,Table1_Group1 在此範圍內的評估排序表示式:當前範圍 |
再訂購量列: | 為文字框新增互動式排序功能:True
排序表示式:=[再訂購量] 資料區域或分組排序:選擇資料區域或者分組,Table1_Group1 在此範圍內的評估排序表示式:當前範圍 |
6、執行程式
通過 F5 鍵執行程式,在每列列頭的右側有一個排序圖表,點選排序圖表可以實現對資料的排序操作:
線上演示及原始碼下載地址:
http://www.gcpowertools.com.cn/products/activereports_demo.htm
相關閱讀: