以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 用表达式如何生成02 09 这样的月份 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=9202) |
||||
-- 作者:sheep204 -- 发布时间:2011/3/11 11:25:00 -- 用表达式如何生成02 09 这样的月份 我看了帮助文件,当月份为单数时,用表达式 SubString(Convert([日期],\'System.String\'),6,IIF(SubString(Convert([日期],\'System.String\'),7,1) = \'-\',1,2)) 只能生成2、3、9这样的月份,如何用表达式生产02 03 09这样自动补0的两位数月份
[此贴子已经被作者于2011-3-11 11:25:11编辑过]
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/3/11 11:29:00 --
表达式是一样的,不过我设置了列属性,固定整数位数为2 |
||||
-- 作者:kylin -- 发布时间:2011/3/11 12:48:00 -- 如果这个取值计算的列设为“字符型”,那么这个表达式就可以得到你的要求,否则按老六提供例子去完成。 |
||||
-- 作者:sheep204 -- 发布时间:2011/3/11 13:24:00 -- 以下是引用狐狸爸爸在2011-3-11 11:29:00的发言:
表达式是一样的,不过我设置了列属性,固定整数位数为2 如果是字符型的呢?我想把日期作为编号的流水号。是不是需要在rowadd事件中写代码 [此贴子已经被作者于2011-3-11 14:11:43编辑过]
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/3/11 14:32:00 -- 如果是字符型,在Windows 7/Vista下:
IIF(SubString(Convert([日期],\'System.String\'),7,1) = \'/\',\'0\',\'\') + SubString(Convert([日期],\'System.String\'),6,IIF(SubString(Convert([日期],\'System.String\'),7,1) = \'/\',1,2))
在Windows XP下:
IIF(SubString(Convert([日期],\'System.String\'),7,1) = \'-\',\'0\',\'\') + SubString(Convert([日期],\'System.String\'),6,IIF(SubString(Convert([日期],\'System.String\'),7,1) = \'-\',1,2))
如果要日期流水号,应该在DataRowAdded事件中写代码,这个时候就不应该用表达式列了,用代码很方便。
|