搭建论坛《搭建之星》论坛数据库交流 → [学习]得到没有分隔符的年、月、日


  共有2834人关注过本帖树形打印

主题:[学习]得到没有分隔符的年、月、日

帅哥哟,离线,有人找我吗?
admin
  1楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 搭建官方
等级:管理员 帖子:5504 积分:20561 威望:9 精华:5 注册:2002-4-5 17:08:42
[学习]得到没有分隔符的年、月、日  发帖心情 Post By:2007-6-29 15:51:40

在为一些票据自动编写单号时,通常提取当前日期作为单号的组成部分,以避免单号重复。由于日期是由年、月、日以及分隔符“-”组成,因此要剔除分隔符“-”,得到没有分隔符的年月日。如将当前日期“2007-6-29”,剔除分隔符后的结果为“2007629”。

首先想到的方法,就是“截取”,先截取前四位字符年、再截取中间月,日后截取日。但由于月、日,位数有可能是两位,也有可能是一位,截取的结果,可能是错误的,因此不能使用“截取”的方式得到没有分隔符的年月日。

字符串操作构件提供了多段分解功能,这样就可以把日期的分隔符“-”,作为标记字符串,把当前日期赋给初始字符串,得到分解后的字符串再连接,这样就得到了没有分隔符的年月日了。事件设置,如图1所示


此主题相关图片如下:
按此在新窗口浏览图片

如图1所示很简单明了的得到了正确结果。但是,方法“得到指定字符串”的运用显得很繁复。

“字符串操作”构件提供的另一个方法“开始段字符串的循环”,可以得到分段后的每一个子符串,我们利用该特性,也可以巧妙的得到正确的结果。如图2所示。


此主题相关图片如下:
按此在新窗口浏览图片

在循环过程中,如图3所示。


此主题相关图片如下:
按此在新窗口浏览图片

在循环结束后,如图4所示。


此主题相关图片如下:
按此在新窗口浏览图片

解释:在循环过程中,可以想向共分了三段,因此循环三次。第一次循环,把分解的第一段子字符串(如2007)压进缓存;第二次循环,把分解的第二段子字符串(如6)压进缓存;第三次循环,把分解的第三段子字符串(如29)压进缓存;

循环结束后,把压入缓存中的三个字符串,连接起来赋给……


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
chdrl
  2楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:发烧友 帖子:81 积分:779 威望:0 精华:0 注册:2006-11-16 16:24:07
  发帖心情 Post By:2007-6-30 12:38:28

我使用时在得到月、日后再使用字符串构件(设置成两位数字格式)转化一下,这样得到的格式便成为标准八位日期格式了,然后再连接几位自动编号的数字,一起组成自动编号的单据号,使用起来非常方便。

支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
kass
  3楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:技师 帖子:174 积分:1279 威望:0 精华:1 注册:2007-4-19 19:09:03
  发帖心情 Post By:2007-7-6 15:51:56

这样不是更好:

参数> 系统值.当前:<当前日期>

设置> 窗口1.字符串操作1.属性:(替换参数.初始字符串)

执行> 窗口1.字符串操作1.取值方法:[得到替换后的字符串]

设置> 窗口1.普通标签1.属性:(标题)


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
FSJM
  4楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:2323 积分:6885 威望:9 精华:0 注册:2002-10-23 13:50:52
  发帖心情 Post By:2007-7-6 15:57:05

方法很多,只要肯动脑筋,就会有惊喜。

支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部

返回版面帖子列表

[学习]得到没有分隔符的年、月、日








签名