日期:2014-05-17  浏览次数:20964 次

流水號的增加.請大家幫忙.
有個流水號A+日期+流水號
如A070814001
請問大家怎樣實現流水號的自動增加.
即第一次提交時是A070814001
下次就是A0708002

------解决方案--------------------
提供思路,提交时检查数据库中是否存在A070814001,如果存在取所有类似A070814的记录,然后取后3位进行比较,在其中最大数的基础上加1;如果不存在,就建立。

------解决方案--------------------
写了个例子,应该能满足你的需求

'******************
'取得自动单号
'fd 字段名
'tp 标识
'tab 数据表
'n 单号长度
'******************

d1=right(year(date()),2)
d2=month(date())
if len(d2)=1 then
d2= "0 " & d2
end if
d3=day(date())
if len(d3)=1 then
d3= "0 " & d3
end if

datestr=d1 & d2 & d3

function GetDanHao(fd,tp,tab,n)

set rs=server.createobject( "adodb.recordset ")
sql= "select right(max( "&fd& "),4) from "&tab& " where left( "&fd& ",9)= ' "&tp& " ' "
set rs =conn.execute(sql)
If rs.BOF Then
tmp = 1
Else
If Trim(rs(0) & " ") = " " Then
tmp = 1
Else
tmp = CLng(rs(0)) + 1
End If
End If
GetDanHao=tp&right( "000000000 " & tmp,n)
rs.close
end function

------解决方案--------------------
取后面三个出来.....加1不就行了????????
------解决方案--------------------
单独建立一个事务去处理这个。