KDTable 表示式應用工具類

2021-06-16 18:39:34 字數 2827 閱讀 2281

近期在eas開發過程中,由於**內有很多需要聯動處理的邏輯,比如,**單元格變化後,需要聯動計算金額,明細修改後需要聯動處理合計值等,通常的處理是新增**編輯事件,處理以上業務邏輯,經過研究發現kdtable是支援類似excel公式的,以下是開發過程中提供的工具方法,用於設定一些常用的公式,如:sum、加法、減法、if等。

由於公式中使用的單元格索引,類似excel中的列頭表示方式如:a1=sum(b1:b5),如何根據單元格索引獲取對應的列頭,著實耗費了一些時間。

1

/**2

* 給單元格新增sum表示式3*

@param

cell4*

@param

from5*

@paramto6

*/7public

static

void setcellsumexpr(icell cell, int from, int

to)

1011

/**12

* 給單元格新增if表示式

13*

@param

cell

14*

@param

condexpr

15*

@param

expr1

16*

@param

expr2

17*/

18public

static

void

setcellifexpr(icell cell,string condexpr,string expr1,string expr2)

2122

/**23

* 給單元格新增add表示式

24*

@param

cell

25*

@parama26

* @paramb27

*/28

public

static

void setcelladdexpr(icell cell,int a,int

b)31

32/**

33* 給單元格新增add表示式,允許不連續區域求和

34*

@param

cell

35*

@param

range

36*/

37public

static

void setcelladdrangeexpr(icell cell,int

range)

4041

/**42

* 給單元格新增substract表示式

43*

@param

cell

44*

@parama45

* @paramb46

*/47

public

static

void setcellsubexpr(icell cell,int a,int

b)50

51//

return =sum(from:to);

52public

static string getsumexpr(int from, int

to)

5960

//return =a+b

61public

static string getaddexpr(int a, int

b) 67

68//

return =range[0]+range[1]+...+range[n]

69public

static string getaddrangeexpr(int

range)

7879 flag = true;80

}81return

buff.tostring().intern();82}

8384

//return =a-b

85public

static string getsubexpr(int a, int

b) 91

92//

retur =if(condexpr,expr1,expr2);

93public

static

string getifexpr(string condexpr, string expr1, string expr2)

100101

/**根據列的的位置獲取列標,如a、aa、ab...採用類似進製轉換的演算法

*/102

public

static string getexcelcolumnlabel(int

colcount) while (colcount > 0);

109return

rs;110

}111

112/**

根據列標獲取列的索引,採用類似進製轉換的演算法

*/113

public

static

intgetexcelcolumnindex(string colname)

117 colname =colname.touppercase();

118119

//從-1開始計算,字母重1開始運算。這種總數下來算數正好相同。

120int count = -1;

121char cs =colname.tochararray();

122for (int i = 0; i < cs.length; i++)

125return

count;

126 }

day14 正規表示式 常用工具類

14.01 常見物件 正規表示式的概述和簡單使用 b 案例演示 a 非正規表示式實現 b 正規表示式實現 14.02 常見物件 字元類演示 a 預定義字元類 a greedy 數量詞 14.05 常見物件 正規表示式的分割功能 b 案例演示 14.06 常見物件 把給定字串中的數字排序 14.07 ...

正規表示式校驗工具類

幾乎每個專案裡都有正規表示式校驗,寫幾個簡單的校驗記錄下來,方便使用 1.判斷是否是合法的手機號 判斷是否是合法的手機號 public static boolean checkphone string phone 17 d 15 d 18 d 14 d matcher m p.matcher pho...

EL表示式應用

在上篇文章中簡單介紹了一下el表示式,現在就以例子來演示如何應用el表示式。注意 如果只是使用el表示式不需要引入任何jar包,只要 jsp servlet 容器實現了 j2ee1.4 servlet2.4 jsp2.0規範就可以。1 servlet中,設定一些變數,放到 request.setat...