怪事
if request("sendnumber")<>"" or request("modtype")<>"brow" then
str=split(request("sendnumber"),"|")
amta=0
for i=0 to ubound(str)-1
amta=amta+csng(gethxje(str(i)))
next
if amta = csng(request("upmamt")) then
for j=0 to ubound(str)-1
set rs=server.CreateObject("adodb.recordset")
sqls="select * from FS_AFFIRM_MONEY WHERE AMID='"&str(j)&"'"
rs.open sqls,session("sconn"),0,3
if not rs.eof then
amt=csng(rs("AMMNY"))-csng(rs("AMXMNY"))
amdate=rs("AMDATE")
upmoutname=rs("AMREMARK3")
upmoutaccount=rs("AMREMARK4")
upmbrno=rs("AMREMARK5")
session("sconn").execute "update FS_AFFIRM_MONEY set AMXMNY=AMXMNY+"&request("upmamt")&" WHERE AMID='"&str(j)&"'"
end if
amera="320100"
ammny=request("upmamt")
amxmny=0
upmid=request("upmid")
upmniid=request("upmniid")
amzy="不明款核销"
amidd=str(j)
amtype="1"
Set MyComm = Server.CreateObject("ADODB.Command")
MyComm.ActiveConnection = Session("sconn") 'MyConStr是数据库连接字串
MyComm.CommandText = "IN_FS_AFFIRM_MONEY" '指定存储过程名
MyComm.CommandType = 4 '表明这是一个存储过程
MyComm.Prepared = true '要求将SQL命令先行编译
'声明参数
MyComm.Parameters.append MyComm.CreateParameter("@amera",200,1,6,amera)
MyComm.Parameters.append MyComm.CreateParameter("@amdate",200,1,8,amdate)
MyComm.Parameters.append MyComm.CreateParameter("@amtype",200,1,3,amtype)
MyComm.Parameters.append MyComm.CreateParameter("@ammny",5,1,24,ammny)
MyComm.Parameters.append MyComm.CreateParameter("@amxmny",5,1,24,amxmny)
MyComm.Parameters.append MyComm.CreateParameter("@upmniid",200,1,20,upmniid)
MyComm.Parameters.append MyComm.CreateParameter("@upmid",200,1,20,upmid)
MyComm.Parameters.append MyComm.CreateParameter("@amzy",200,1,20,amzy)
MyComm.Parameters.append MyComm.CreateParameter("@upmoutname",200,1,40,upmoutname)
MyComm.Parameters.append MyComm.CreateParameter("@upmoutaccount",200,1,15,upmoutaccount)
MyComm.Parameters.append MyComm.CreateParameter("@upmbrno",200,1,100,upmbrno)
MyComm.Parameters.append MyComm.CreateParameter("@amidd",200,1,20,amidd)
MyComm.Execute
Set MyComm = Nothing
next
end if
Response.Write "<script language=javascript>alert(""成功核销"");document.location='bmkhx_pre.asp'</script>"
end if
以上程序是用asp调用一段输入的字符串用“|”分割开的,截取后根据条件调用存储过程的,可是为什么每次都调用了两次了啊?比如后面的j=2,调用存储入库插表,却重复插入了两次