以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  对日期取值怎么取不到0值呢?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=29153)

--  作者:我爱狐表011
--  发布时间:2013/2/28 20:43:00
--  对日期取值怎么取不到0值呢?

1、目     的:我想对表A的会员编号(表达式格式)赋值,值来源于“生日”列(如:2013-02-03)

2、方     法:设置会员编号表达式为:SubString(Convert([生日],\'System.String\'),1,4) + SubString(Convert([生日],\'System.String\'),6,IIF(SubString(Convert([生日],\'System.String\'),7,1) = \'-\',1,2)) + SubString(Convert([生日],\'System.String\'),9,IIF(SubString(Convert([生日],\'System.String\'),7,1) = \'-\',1,2))

3、错    误:对于月和日为双数的都没有问题,对于单月的就不起作用了,比如:生日:2012-11-24    会员编号:20121124

                                                                                                      生日:2012-02-03    会员编号:20122


--  作者:czy
--  发布时间:2013/2/28 21:08:00
--  

按你说的做,我这里没有发现问题。


--  作者:lsy
--  发布时间:2013/2/28 21:14:00
--  

DataColChanged

 

e.DataRow("出生地点") = CStr(e.DataRow("出生日期")).replace("-","")

 

如果是只要年月,不要日,那就写成这样:

e.DataRow("出生地点") = Left(CStr(e.DataRow("出生日期")).replace("-",""),6)

 

还真的没取到0,再看看。

[此贴子已经被作者于2013-2-28 21:30:56编辑过]

--  作者:我爱狐表011
--  发布时间:2013/2/28 21:14:00
--  

 生日:2012-02-03    会员编号:20122

我想要的是:会员编号:201202

而不是会员编号:20122(省略了一个0)

 

麻烦赐教


--  作者:lsy
--  发布时间:2013/2/28 21:44:00
--  
e.DataRow("会员编号") = e.DataRow("生日").Year & Format(e.DataRow("生日").Month,"00") & Format(e.DataRow("生日").Day,"00")
--  作者:我爱狐表011
--  发布时间:2013/2/28 22:10:00
--  
多谢赐教
--  作者:lsy
--  发布时间:2013/2/28 22:11:00
--  
不是我教你,是你教了我,帮别人的时候,更帮了自己。