報表開發控制元件FineReport:[7]比較?

如下面總額中擴展出來的每個值與擴充套件後第一個值進行比較:

報表開發控制元件FineReport:[7]比較

工具/原料

報表開發控制元件:FineReport

電腦

方法/步驟

開啟報表

開啟報表%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\Cacuate_Between_Cells\Proportion.cpt。

將佔比改為比較,修改如下:

報表開發控制元件FineReport:[7]比較

比較

在C3單元格中,輸入公式=B3 - B3[A3:1]:B3單元格擴展出來的每一個值與B3單元格擴展出來的第一個值的差。

其中B3[A3:1]表示A3單元格擴展出來的第一個值下的B3的值,B3[A3:1,B3:1],即表示B3擴展出來的第一個值。

儲存與預覽

儲存模板,點選分頁預覽,效果如上。模板效果線上檢視請點選Compare.cpt

已完成模板可參考%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\Cacuate_Between_Cells\Compare.cpt。

描述

某些報表中,可能需要對擴充套件後的單元格精確定位,然後參與運算,如上比較例子。然而在單元格擴充套件前,單元格會擴展出多少格子及格子所在的位置,在擴充套件前很難描述。因此,FineReport中通過層次座標的概念來對擴充套件後的單元格進行唯一性定義。

絕對層次座標就是通過絕對位置來精確定位擴充套件後的單元格,定位規則如下:

報表開發控制元件FineReport:[7]比較

Cellx:指目標單元格,是Lk,Lk-1...L1;Tk,Tk-1...T1的附屬格。

Lk:指某個目標單元格Cellx的左父格,Lk的次序是從遠到近的,也就是從離當前格最遠的左父格開始,也可以理解為從最高級別的分組格開始。

lk:指左父格LK擴充套件後的次序,即擴充套件後的第幾個單元格,如果不指定lk或lk為0,則表示為當前表示式所在單元格所屬的當前左父格LK。

Tk:指某個目標單元格Cellx的上父格,Tk的次序也是從遠到近的,也就是從離當前格最遠的上父格開始,也可以理解為從最高級別的分組格開始。

tk:指上父格Tk擴充套件後的次序,即擴充套件後的第幾個單元格,如果不指定tk或tk為0,則表示為當前表示式所在單元格所屬的當前上父格TK。

注:如果只有左父格沒有上父格,分號可以省略,即Cellx[Lk:lk,LK-1:lk-1,......,L1:l1];

如果只有上父格沒有左父格,分號不能省略,即Cellx[;Tk:tk,Tk-1:tk-1......,T1:t1]。

示例

報表開發控制元件FineReport:[7]比較

報表開發控制元件FineReport:[7]比較

公務, 報表, 控制元件, 總額,
相關問題答案