我是新手,但我很虚心,对我发的问题请不要取笑,谢谢
程序已經寫好,但為什么祂不前面補0呢?
我在數據庫里添加了 WX 05 12 001 -003
但在前如添加的時候 流水號自動生成為 WX 05 12 4 應該要為 WX 05 12 004
請大家看看是哪里出錯了!
<%
stra="WX"&right(year(now()),2)&month(now)
connstr = "DBQ="+server.mappath("../party.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;ImplicitCommitSync=Yes;MaxBufferSize=512;MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UserCommitSync=Yes;"
Set Conn = Server.CreateObject("ADODB.Connection")
set rs=server.createobject("adodb.recordset")
conn.open connstr
rs.Open "select * from weix where left(dj,6)='"&stra&"' order by dj desc",conn,1,3
if rs.recordcount=0 then
intstr="001"
else
intstr=right(rs("dj"),3)
intstr=cint(intstr)+1
end if
IDNO=stra&intstr
%>
[此贴子已经被作者于2005-12-28 8:22:02编辑过]
程序已經寫好,但為什么祂不前面補0呢?
我在數據庫里添加了 WX 05 12 001 -003
但在前如添加的時候 流水號自動生成為 WX 05 12 4 應該要為 WX 05 12 004
請大家看看是哪里出錯了!
<%
stra="WX"&right(year(now()),2)&month(now)
connstr = "DBQ="+server.mappath("../party.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;ImplicitCommitSync=Yes;MaxBufferSize=512;MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UserCommitSync=Yes;"
Set Conn = Server.CreateObject("ADODB.Connection")
set rs=server.createobject("adodb.recordset")
conn.open connstr
rs.Open "select * from weix where left(dj,6)='"&stra&"' order by dj desc",conn,1,3
if rs.recordcount=0 then
intstr="001"
else
intstr=right(rs("dj"),3)
intstr=cint(intstr)+1
end if
IDNO=stra&intstr
%>
INSTR是STRING数据类型,当转换成INT数据类型的时候,前面的‘0’就被忽略了。
改为这样:
else
intstr="1" & right(rs("dj"),3)
intstr=right(cstr(cint(intstr)+1),3)