以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  表达式的问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=70552)

--  作者:newsun2k
--  发布时间:2015/6/24 11:20:00
--  表达式的问题
有两列,一列是数值型[重要度],有值0(一般),1(重要)
一列是日期型[期限]
我想设计一个表达式列,用于排序,使得按重要程度,日期排列。
这个表达式如何设计?
convert([重要度],\'System.String\')  + SubString(Convert([期限],\'System.String\'),1,10)?

得到的结果:
\'1D2015/5/12 \'
\'1D2015/12/12\'
\'1D2010/7/12 \'
不是我想要的
\'1D2010/7/12 \'
\'1D2015/5/12 \'
\'1D2015/12/12\'

--  作者:xiaoohoo
--  发布时间:2015/6/24 11:23:00
--  
直接使用table的sort属性=“重要度,期限”
--  作者:大红袍
--  发布时间:2015/6/24 11:30:00
--  

方法一:2楼

 

方法二:不能用表达式做,必须用代码实现,datacolchanged事件

 

If e.DataCol.Name = "重要度" OrElse e.DataCol.Name = "期限" then

    e.Datarow("某列") = e.datarow("重要度") & Format(cdate(e.datarow("期限")), "yyyy/MM/dd")

End If