如何對報表FastReport.Net中的數(shù)據(jù)進行排序
排序數(shù)據(jù)是最重要的數(shù)據(jù)處理工具之一。可以說,這是分析的基礎。分析混亂的輸出數(shù)據(jù)幾乎是不可能的。因此,排序提供了處理數(shù)據(jù)的所有工具。這也適用于報表工具。畢竟,數(shù)據(jù)源可能會提供報表數(shù)據(jù)未排序或已排序,但不在必填字段中,也不是在順序中。
FastReport.Net的文檔概述了兩種排序方式:對組值進行排序,對數(shù)據(jù)區(qū)域中的數(shù)據(jù)進行排序。
創(chuàng)建群組時,即設置“群組標題”band時,我們可以使用第一種排序方式。當您選擇要分組的字段時,可以立即對其進行排序。
共有三種排序選項:無排序、升序、降序。
但是,如果我們談論對數(shù)據(jù)倉中的基本數(shù)據(jù)進行排序,則可以訪問更高級的排序——一次訪問三個字段,對于每個字段,您都可以選擇排序順序。
要調(diào)用排序編輯器,您需要在頁面模板上單擊band的標題兩次。
盡管界面友好,但此工具仍存在一個重大缺陷。準確地說,它只能對三個字段進行排序。但是,某些表具有各種字段,您可能需要按3個以上的字段進行排序。
您可以通過使用查詢對源中的數(shù)據(jù)進行排序來繞過此限制。您可以通過直接為所需表創(chuàng)建數(shù)據(jù)源或通過已創(chuàng)建的源來執(zhí)行此操作。
在第一種情況下,我們只是編寫一個請求以正確的順序獲取數(shù)據(jù)。第二種情況是相同的,但是在已經(jīng)創(chuàng)建的數(shù)據(jù)源中。
在數(shù)據(jù)樹中,選擇合適的表。在屬性檢查器中,我們詢問SelectCommand。
向?qū)Ч餐瑒?chuàng)建了一個SQL查詢。您可以手動輸入查詢或使用查詢生成器。因此,您可以對任意數(shù)量的字段進行排序:
SELECT * FROM customer ORDER BY Country, City, State, CustNo, Company
創(chuàng)建數(shù)據(jù)源時,可能不會意識到您需要特定的訂單數(shù)據(jù)。不過您始終可以在現(xiàn)有數(shù)據(jù)源中添加請求。但是請注意,此方法不適用于非SQL數(shù)據(jù)庫。
掃碼立即申請