| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1624 人关注过本帖
标题:再问自动编号的问题
只看楼主 加入收藏
关关雎鸠
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:164
专家分:170
注 册:2010-4-13
收藏
得分:0 
回复 9楼 cnfarer
安您指导,程序写好后,添加到项目管理器的其他选项的其他文件目录下。运行后,找不到变量IID、ID、IID2  
如果iid 是我表中的“订单号”字段,那么CALCULATE  MAX(id) TO iid2 中的idiid2 是指的什么?表中没有啊?并且还提示:APPENF BLANK 错误:9数据类型不匹配?
请老师赐教,谢谢


[ 本帖最后由 关关雎鸠 于 2010-9-4 20:47 编辑 ]
2010-09-04 20:35
关关雎鸠
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:164
专家分:170
注 册:2010-4-13
收藏
得分:0 
回复 10楼 makebest
小买卖,不敢想有那么多的订单,个位数已足以
2010-09-04 20:51
sywzs
Rank: 10Rank: 10Rank: 10
来 自:辽宁
等 级:贵宾
威 望:15
帖 子:508
专家分:1725
注 册:2009-5-13
收藏
得分:2 
我的做法是:
1、定义一个全局变量 nDDH (订单号 数值型)
2、给变量赋初值,前提是 SET DATE ANSI、SET CENTURY ON
   nDDH=VAL(CHRTRAN(DTOC(DATE()),".",""))*100
3、获取表中的最大订单号
   SELECT MAX(订单号) DDH FROM 表 INTO CURSOR TMP
4、nDDH=MAX(TMP.DDH,nDDH)+1
2010-09-05 10:50
关关雎鸠
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:164
专家分:170
注 册:2010-4-13
收藏
得分:0 
回复 13楼 sywzs
2、给变量赋初值,前提是 SET DATE ANSI、SET CENTURY ON
   nDDH=VAL(CHRTRAN(DTOC(DATE()),".",""))*100
不懂。版主能否说明的详细一些。谢谢了。
2010-09-05 15:04
茵梦湖
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:31
帖 子:545
专家分:2180
注 册:2009-4-25
收藏
得分:2 

因为你的表中 并不是只有当天一个日期的数据, 因此(假设订单号取11位, 即: 20080101001), 那么:

sele 你的表名
loca for padr(订单号,8)=dtos(date())
if eof()
   inse into 你的表名(订单号) valu( val(dtos(date())+"001") )
else
   sele max(订单号) from 你的表名 where padr(订单号,8)=dtos(date()) into arra ls
   inse into 你的表名(订单号) valu( ls+1 )
endif



[ 本帖最后由 茵梦湖 于 2010-9-5 15:22 编辑 ]
2010-09-05 15:21
啸凡
Rank: 8Rank: 8
等 级:贵宾
威 望:45
帖 子:1356
专家分:885
注 册:2006-2-22
收藏
得分:2 
楼主是不是应该好好补一下基础!

[ 本帖最后由 啸凡 于 2010-9-5 17:40 编辑 ]

两人行已有我师……
2010-09-05 17:37
快速回复:再问自动编号的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018666 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved