Foxtable(狐表)用户栏目专家坐堂 → [求助]如何实现(日期+本年流水号)订单号


  共有381人关注过本帖树形打印复制链接

主题:[求助]如何实现(日期+本年流水号)订单号

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


加好友 发短信
等级:婴狐 帖子:10 积分:133 威望:0 精华:0 注册:2016/12/25 22:42:00
[求助]如何实现(日期+本年流水号)订单号  发帖心情 Post By:2017/1/12 17:55:00 [只看该作者]

如图,想设计一个(日期+本年流水号)的订单号,如何在新增一行时自动显示?
如:2017年1月1日新增一个订单,显示为201701010001(前八位为当日日期,后四位为本年流水号,注意是本年流水号
无论2017年产生多少订单,到了2018年1月1日编号后四位又以0001开始
https://pan.baidu.com/s/1boDdUJt图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:10804 积分:54205 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/1/12 18:05:00 [只看该作者]

 

[此贴子已经被作者于2017/1/12 18:05:38编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:10804 积分:54205 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/1/12 18:10:00 [只看该作者]

DataRowAdded事件

 

Dim max As String
Dim idx As Integer
max = e.DataTable.Compute("Max(编号)","substring(编号,1,4) >= '" & Date.Today.Year & "'") '取得该月的最大编号
If max > "" Then '如果存在最大编号
    idx = CInt(max.Substring(8,4)) + 1 '获得最大编号的后三位顺序号,并加1
Else
    idx = 1 '否则顺序号等于1
End If
e.DataRow("编号") = format(Date.Today, "yyyyMMdd") & Format(idx,"0000")


 回到顶部
帅哥哟,离线,有人找我吗?
TP
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:10 积分:133 威望:0 精华:0 注册:2016/12/25 22:42:00
  发帖心情 Post By:2017/1/12 18:30:00 [只看该作者]

我是新手,请帮忙,感谢啦

.NET Framework 版本:2.0.50727.5485
Foxtable 版本:2016.7.29.1
错误所在事件:表,表A,DataRowAdded
详细错误信息:
调用的目标发生了异常。
函数参数中的类型不匹配: Substring(),参数 1,应为 System.String。

[此贴子已经被作者于2017/1/12 20:03:50编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:10804 积分:54205 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/1/12 20:09:00 [只看该作者]

 编号列,改成字符类型,不要用数值列。

 回到顶部
帅哥哟,离线,有人找我吗?
TP
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:10 积分:133 威望:0 精华:0 注册:2016/12/25 22:42:00
  发帖心情 Post By:2017/1/12 20:32:00 [只看该作者]

OK了,太感谢啦

 回到顶部
帅哥哟,离线,有人找我吗?
TP
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:10 积分:133 威望:0 精华:0 注册:2016/12/25 22:42:00
  发帖心情 Post By:2017/1/14 18:29:00 [只看该作者]

已经会运用了,但是想举一反三,如果可以的话,可不可以把每句话的意思和意图写下来,作为日后学习的参考

 回到顶部