超高效提公升水晶報表效能之下推記錄選定 示例

2021-03-31 08:56:31 字數 658 閱讀 4573

本示例展示編寫可以下推到資料庫伺服器的記錄選定公式的好處。

在 xtreme 示例資料庫的訂單表中,有 2192 條記錄,其中訂單日期在 2001 年以前的有 181 條。假設您只想對這些記錄製表。一方面,可以使用下面的記錄選定公式:

year () < 2001

生成的 sql 查詢會將 2192 條記錄全部傳送至 crystal reports,然後記錄選定公式將其減少到 181。要了解這一點,單擊「資料庫」選單上的「顯示 sql 查詢」,您會注意到 sql 查詢沒有 where 子句。這是因為 crystal reports 無法下推 where 子句中的 year ( ) 函式。

另一方面,下面的記錄選定公式生成相同的報表:

< #jan 1, 1997#

上面的第二條公式可在資料庫伺服器上執行,因此可以下推。所生成的 sql 查詢僅將 181 條記錄傳送到 crystal reports。因此,在由 crystal reports 對記錄選定公式求值時,無須進一步消除記錄。單擊「資料庫」選單上的「顯示 sql 查詢」,您會注意到所生成的 sql 查詢中有 where 子句。

如本示例所示,在改進記錄選定公式後,報表的處理速度提高了。在本例中,兩個公式生成相同的報表,但第二個公式利用了資料庫伺服器在處理其資料時可以使用的功能和優化。

水晶報表 建立報表

水晶報表是乙個優秀的報表開發工具,本人在開發通用管理系統的時候,所有報表都使用水晶報表,其簡單 易用和強大的功能令筆者倍加喜愛,現將水晶報表使用手記呈現給大家。一 在使用自帶的水晶報表時,請註冊,否則只能使用30次 二 使用crystalreportviewer進行預覽 crystalreportv...

水晶報表 子報表

經過了一段時間對水晶報表的操作,我對其稍稍了解了一點點。這兩天,一直在為資料量太大而煩惱,我有六張表,其中一張關聯剩餘的五張表。想要顯示資料,結果,顯示不出來,即使我已經在鏈結裡面設定了左外連線。我知道這個是按照笛卡爾積相乘,所以資料會成倍的增加。所以,即使我改用直接連線資料庫的方式也行不通。就是p...

水晶報表匯出

private void page load object sender,system.eventargs e region web form designer generated code override protected void oninit eventargs e required me...