订单编号问题

soar634 软件开发  2009-08-14 11:48:15
有个名叫dingdan 的表,字段有id(自动编号)、Num(订单号),还有一些订货信息(订货人,联系电话等),订单号的格式是这样的:年月日(8位)+今日订单顺序(2位)+总订单顺序(4位),例如20090810010025, 这是个多用户订单系统

订单编号这个框里面要打开这个页面就有订单编号显示在那里,这个订单编号数据库中没有,框里面都填满以后,按确定,订单编号也就随即添加到dingdan表里。根据订单编号的格式,前八位是日期,中间两位是当天订单序号 (按顺序排下来),最后四位是数据库中总的订单序号。我不懂的是,中间两位和最后四位要显示出来,该怎么写函数。新一天第一个人订单的订单编号中间两位是从01开始。

请求高手提供这样的代码.谢谢!
...全文
39 点赞 收藏 2
写回复
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
number123456 2009-08-14
两种方法,一种利用application
先创建三个application
记录订单编号日期 application("orderdate") = 当前日期
当天订单数量 application("ordercounts") = 1
总订单数量 application("ordernumber") = 1

每次读取的时候先判断一下orderdate与当前日期是事有差别,如果为同一天,ordercounts+1,如果不是,则更新orderdate = date ,ordercounts = 1
这样,前二位,你只需ordercounts+1,后四位ordernumber+1就行,

第二种方法就是通过数据查询
当天的两位数就查当天的订单,取最后一订单的编号,取出那两位,然后+1
后四位就是取出最后一个订单的编号,取出最后四位,+1


但是你要先显示订单号,缺点就是因为你要在订单刚形成时就出现,期间可能会有别人己经提交订单,所以最后提交订单时,要重新计算这样才准,但是与开始创建 订单时可能有出入,不一样。
回复
sy_binbin 2009-08-14
其实就是查询数据库

不过你这样做有问题

假如现在2个人同时生成订单,有可能订单号就是一样的了!!
回复
发动态
发帖子
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
社区公告
暂无公告