function xx(b) dim sql,num,rs,insect_num,num1 set Rs = Server.CreateObject("ADODB.Recordset") sql="select * from per_client where num like '%b%'" rs.open sql,cn,1,1 if rs.eof then num=000000 num1="b"&"num" else do while not rs.eof num=num+1 rs.movenext loop num=num+1 for i=1to(6-clng(len(num))) insect_num="0" & num next num1="b" & num end if end function 老函数,我主要想问问我这个FUNCTION 的值是为num1吗? 整个函数是没有错误的~~ 当我把function去掉的时候`~ 在我的页面中使用 ZZ=NUM1~ ZZ是可以使用的,他的值为b带数值 `~ 但是我一旦加上FUNCTION, 然后使用ZZ=xx(b) 页面就会显示错误
我觉得问题太多了,不知道对不对 整个函数,没有return,如何获取返回值? b和num都是变量,那么num1="b"&"num"是不是应该写成num1=b&num? num=000000这个是不是应该写成num="000000" sql="select * from per_client where num like '%b%'"这里面的b是字符还是变量,如果是变量,那么这句话是错的,如风狼所说 for i=1 to (6-clng(len(num))) 这里先对num取长度然后换为LONG型,是什么目的?num的数值是0,经过do循环,如果记录超过100万条,那么num才会达到区区7位数,取长度还转换为LONG型就不必了吧 如此如此。。。
我要做的是这样一个功能, 做一个FUNCTION函数, 他能实现一个自动编号功能, 自动编号的第一位是字母, 也就是我的自第一个编号是"B000000" 第二个编号是"B000001" 其中B的值可以改变
那样的话应该在insert into前面确定这个编号的值 然后将这个值随着insert一起添加到数据库里 log_value = fun("b") '调用 函数框架如下: funtion fun(first_char) set Rs = Server.CreateObject("ADODB.Recordset") sql="select * from per_client where num like '%" & first_char & "%' order by log_time DESC;" '查找同类编号 rs.open sql,conn,3,3 if rs.eof then num1 = first_char & "000000" '没有同类编号则从000000开始 return num1 '返回编号 else temp_num = right(rs("num"),6) + 1 '有的话取得数值部分并加1 for i =1 to (6 - len(num)) insect_num = "0" & temp_num '给整数前补0 next return (first_char & insect_num) '返回编号 end if end function