asp 自动编号不会自动+1了
做一个ASP的级联,下拉菜单点击不同的地区,就显示不同的自动编号,但是为什么<optionvalue="<%=cgid%>">汕头</option>时候,就可以自动编号+...
做一个ASP的级联,下拉菜单点击不同的地区,就显示不同的自动编号,但是为什么<option value="<%=cgid%>">汕头</option> 时候,就可以自动编号+1.。。。而 <option value="51<%=cgid%>">汕头</option>在前面加数字的时候,他就不会+1了,麻烦高手帮我看看。。。谢谢
<%
set rs=server.CreateObject("adodb.recordset")
'锁定指定记录通过with(updlock)完成。
sql="select id from baogao with(updlock) "
rs.open sql,conn,1,3
'将日期转换为YYYYMMDD格式的字符串
if len(month(date()))=1 then
cmonth="0"& cstr(month(date()))
else
cmonth=cstr(month(date()))
end if
if len(day(date()))=1 then
cday="0"& cstr(day(date()))
else
cday=cstr(day(date()))
end if
if not rs.eof then
set rs_M=server.CreateObject("adodb.recordset")
sql="select max(bh) as id from baogao"
rs_M.open sql,conn,1,3
str=rs_M("id")
no=cstr(int(mid(str,11,5))+1)
select case len(no)
case 1
cno="0000"+no
case 2
cno="000"+no
case 3
cno="00"+no
case 4
cno="0"+no
case 5
cno=no
case else
cno="00001"
end select
intno="ST"&cstr(year(date()))&cmonth&cday&cno '组成新的数据编号
cgid=intno
end if
%>
项目编号:
<label for="bh2"></label>
<input name="bh" type="text" id="bh2" value="" readonly="readonly"></th>
<th width="234" height="39" scope="col"><strong><div align="left"><div align="left">关联汇总:<label for="select"></label>
<select name="select" id="select" onChange="document.getElementsByName('bh')[0].value=this.value">
<option value=<%=rs("typename")%>><%=rs("typename")%></option>
<option value="51<%=cgid%>">汕头</option>
<option value="52<%=cgid%>">广州</option>
</select>
<strong> </strong></th> 展开
<%
set rs=server.CreateObject("adodb.recordset")
'锁定指定记录通过with(updlock)完成。
sql="select id from baogao with(updlock) "
rs.open sql,conn,1,3
'将日期转换为YYYYMMDD格式的字符串
if len(month(date()))=1 then
cmonth="0"& cstr(month(date()))
else
cmonth=cstr(month(date()))
end if
if len(day(date()))=1 then
cday="0"& cstr(day(date()))
else
cday=cstr(day(date()))
end if
if not rs.eof then
set rs_M=server.CreateObject("adodb.recordset")
sql="select max(bh) as id from baogao"
rs_M.open sql,conn,1,3
str=rs_M("id")
no=cstr(int(mid(str,11,5))+1)
select case len(no)
case 1
cno="0000"+no
case 2
cno="000"+no
case 3
cno="00"+no
case 4
cno="0"+no
case 5
cno=no
case else
cno="00001"
end select
intno="ST"&cstr(year(date()))&cmonth&cday&cno '组成新的数据编号
cgid=intno
end if
%>
项目编号:
<label for="bh2"></label>
<input name="bh" type="text" id="bh2" value="" readonly="readonly"></th>
<th width="234" height="39" scope="col"><strong><div align="left"><div align="left">关联汇总:<label for="select"></label>
<select name="select" id="select" onChange="document.getElementsByName('bh')[0].value=this.value">
<option value=<%=rs("typename")%>><%=rs("typename")%></option>
<option value="51<%=cgid%>">汕头</option>
<option value="52<%=cgid%>">广州</option>
</select>
<strong> </strong></th> 展开
1个回答
展开全部
intno="ST"&cstr(year(date()))&cmonth&cday&cno '组成新的数据编号
从上面这行可以看出,生成的编号是类似下面这样的:
ST2014121000001
也就是说从第11个字符开始到结尾的5个字符是编号,所以
no=cstr(int(mid(str,11,5))+1)
这个就是把编号重新取出来再加1
但是,你现在要在编号前加上51,就变成
51ST2014121000001
那么它的第11个字符开始到结尾的5个字符就不再是编号了!应该改为第13个字符开始到结尾的5个字符!即
no=cstr(int(mid(str,13,5))+1)
补充:在数字前面补零可以用更简单的方法,比如:
if len(month(date()))=1 then
cmonth="0"& cstr(month(date()))
else
cmonth=cstr(month(date()))
end if
可改为
cmonth=right("0" & month(date()),2)
再比如后面那个5位数的编号:
select case len(no)
case 1
cno="0000"+no
case 2
cno="000"+no
case 3
cno="00"+no
case 4
cno="0"+no
case 5
cno=no
case else
cno="00001"
end select
可改为
cno=right("0000" & no,5)
从上面这行可以看出,生成的编号是类似下面这样的:
ST2014121000001
也就是说从第11个字符开始到结尾的5个字符是编号,所以
no=cstr(int(mid(str,11,5))+1)
这个就是把编号重新取出来再加1
但是,你现在要在编号前加上51,就变成
51ST2014121000001
那么它的第11个字符开始到结尾的5个字符就不再是编号了!应该改为第13个字符开始到结尾的5个字符!即
no=cstr(int(mid(str,13,5))+1)
补充:在数字前面补零可以用更简单的方法,比如:
if len(month(date()))=1 then
cmonth="0"& cstr(month(date()))
else
cmonth=cstr(month(date()))
end if
可改为
cmonth=right("0" & month(date()),2)
再比如后面那个5位数的编号:
select case len(no)
case 1
cno="0000"+no
case 2
cno="000"+no
case 3
cno="00"+no
case 4
cno="0"+no
case 5
cno=no
case else
cno="00001"
end select
可改为
cno=right("0000" & no,5)
追问
谢谢您解释得如此纤细,但是依旧不能实现,是不是onChange="document.getElementsByName('bh')[0].value=this.value"代入的问题
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询