近期在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...