潤幹報表中巨集的概念

2021-06-18 00:02:00 字數 933 閱讀 4797

巨集是乙個沒有資料型別的字串標識,在報表運算之前,系統會全面搜尋整張報表的表示式定義,將所有的巨集名替換成巨集值。

利用巨集可以在報表中動態的進行表示式的替換,根據使用者傳入的不同巨集值,在報表中可以計算出不同的表示式結果,從而得到不同的報表資訊。這樣使用者就不用根據不同的情況編制許多不同的報表了,大大減輕了使用者的工作量。

比如:有一張包含員工基本資訊的報表,有時我們需要在報表中包含員工的獎金而不包含薪金,有時我們需要在報表中包含薪金而不包含獎金。使用者可以設計一張包含獎金、一張包含薪金的兩張表來實現這個功能,但是利用巨集只需要設計一張報表就可實現,把巨集值設定為獎金就得到包含獎金的報表,把巨集值設定為薪金就得到包含薪金的報表。我們將在下面的例項中講解如何利用巨集來製作這樣的報表。

此外我們還可以利用巨集來實現按乙個資料集的任意字段查詢,這是利用引數所不能實現的。

注意:填報屬性、資料集屬性中的引數值,這兩個地方目前不能用巨集,其它地方的表示式都可以使用。屬性值不能用巨集,巨集只能用在表示式中。

巨集在表示式中的引用方法為「$」。巨集不能寫在引號裡面。

巨集被設計為可以替換sql語句中的任意內容,因此它可以實現引數不能實現的功能(例如動態條件、動態表名等)。目前只有複雜sql資料集可以設定巨集。

使用巨集時,在sql的任意位置寫上巨集的標記「$」,之後外部通過該名稱傳入巨集的值時,這個值即被替換到sql語句的對應位置中。由於sql語句的實質是乙個字串,因此巨集的值也必須是乙個字串。

引數在表示式中被當成變數來使用,在表示式進行計算的過程中,才引用引數的變數值。

巨集在表示式中是沒有資料型別的符號,它指代一串字元,這串字元是表示式的一部分。報表在運算前,該表示式會進行巨集替換,把巨集名替換成巨集值,之後才進行報表的表示式運算。與引數相比較,巨集只是單純進行字串的替換。

舉例來說,某個表示式為 =ds1.select($),而macro1的值為col1,那麼該表示式會被替換成=ds1.select(col1),替換後才進行表示式的運算。

潤幹報表分組求和 潤幹報表實現組內排序報表及改進

報表開發中經常會遇到需要進行組內排序的報表,如按月份的分組彙總值排序顯示,並顯示每月銷售額前十名的記錄。使用報表工具一般通過隱藏行列輔助可以實現,下面通過例項說明潤幹報表的實現過程,以及改進方案。報表需求 根據銷售管理系統資料統計客戶所在地區的訂單總額,地區並按訂單總額降序排列,要求每個地區中顯示銷...

潤幹報表做排名

潤幹報表能夠通過count sum 等函式實現對報表整合排序 下面介紹一下對報表重複排序以及不重複排序的方法 重複排序 如下圖設定,其中e2單元格內表示式為 count d2 0 1,表示統計所有比本格資料大的單元格的數目,然後加1校正即是排名 不重複排序,可以借助輔助列,對重複的資料進行處理。由於...

潤幹報表報錯

1,runqianreportlogger debug inputstream cannot be null 預設語義檔案導致潤幹報表web應用啟動報錯 潤幹報表預設的專案整合功能不太好使啊,還是把demo專案的web inf裡的內容拷過去,手動整合吧。cannot create poolablec...