繁体中文
设为首页
加入收藏
当前位置:ASP技术首页 >> ASP基础 >> 批量数据录入, 辅助输入数据, 以及相关检测(ASP 服务器端)

批量数据录入, 辅助输入数据, 以及相关检测(ASP 服务器端)

2006-07-15 08:00:00  作者:  来源:互联网  浏览次数:0  文字大小:【】【】【
简介: 0) And (curTempTotal 0) And (intTempID > 0)) Then Rem ## 可用数据 intTotalNum = intTotalNum + 1 curBillCostASP = curBillCostASP + curTempASPC intTempCode = Trim(request.Form("fpmodel" & i)) in...

<%

Dim intBillTotal, intBillType, intBillValue, dtaToday, i, strBillCode

Rem 单记录数(预备量)

intBillTotal = request.Form("bn")

intBillTotal = toNum(intBillTotal, 10)

intBillType = getOperType()

intBillValue = getOperValue()

dtaToday = Date()

Rem ###############################################################################################

Rem ## 操作单项目

Dim dtaBillDate, strBillUser, strBillCheckUser, strBillContent

Dim curBillCost, curBillCostASP, intCustID, strCustName, strPayType, intTotalNum

Dim dtaBillYear, intBillID, intBillPlanID, strBillPlanNum

Rem ## dtaBillDate 单日期, strBillUser 填表人, strBillCheckUser 提货人, intBillID 单ID

Rem ## strBillContent 单备注, strBillCode 流水号, curBillCost 单总价(js), curBillCostASP 单总价(ASP)

Rem ## intCustID 客户ID, strCustName 客户名称, strPayType 付款方式, intTotalNum 单 行数量

Rem ## intBillType 单类型, intBillValue 单类型描述, intBillPlanID 计划单ID, strBillPlanNum 计划单号

Rem ## 操作单日期

dtaBillDate = RePlace(Trim(request.Form("BillDate")), ".", "-")

If Not IsDate(dtaBillDate) Then

oUser.gs_AddMessage "操作单日期为空"

Else

dtaBillDate = CDate(dtaBillDate)

dtaBillYear = Year(dtaBillDate)

If (oSys.CheckYearOut(dtaBillYear)) Then

oUser.gs_AddMessage "操作单日期(" & dtaBillYear & ")超出范围"

End If

End If

Rem ## 填表人

strBillUser = Trim(request.Form("BillUser") & "")

If strBillUser = "" Then

oUser.gs_AddMessage "填表人为空"

End If

Rem ## 提货人

strBillCheckUser = Trim(request.Form("BillCheckUser") & "")

If strBillCheckUser = "" Then

oUser.gs_AddMessage "提货人为空"

End If

Rem ## 出错转向

oUser.gs_ShowMessage 1

Rem ## 其他项目

curBillCost = toCur(request.Form("totalprice") & "", 0)

curBillCostASP = 0

intCustID = toNum(request.Form("CustID") & "", 0)

strCustName = request.Form("CustName")

strPayType = request.Form("PayType")

strBillContent = request.Form("BillContent")

intBillPlanID = toNum(request.Form("brefer") & "", 0)

strBillPlanNum = getBillNuber(intBillPlanID)

Rem ###############################################################################################

Rem ###############################################################################################

Rem ## 获得用户输入的数据

Dim arrRecordInfo()

Dim intTempID, curTempPrice, curTempTotal, curTempCost, curTempASPC

Dim intTempCode, intTempName, intTempSpec, intTempUnit, intTempOut

Rem ## intTempID 临时产品ID, curTempPrice 单价, curTempTotal 数量, curTempCost 总价(js)

Rem ## curTempASPC 产品总价(ASP), intTempCode 编码, intTempName 名称, intTempSpec 规格

Rem ## intTempUnit 单位

ReDim arrRecordInfo(9, 0)

Rem ## 初始化 单 行数量为 0, 过滤掉的行数为 0

intTotalNum = 0

intTempOut = 0

response.Write(UBound(arrRecordInfo, 2))

Rem ## 初始化客户端提交的有用数据

For i = 1 to intBillTotal

intTempID = toNum(request.Form("fpid" & i), 0)

curTempPrice = toCur(request.Form("fpprice" & i), 0)

curTempTotal = toCur(request.Form("fptotal" & i), 0)

curTempCost = toCur(request.Form("fpcost" & i), 0)

curTempASPC = curTempPrice * curTempTotal

If ((curTempPrice > 0) And (curTempTotal <> 0) And (intTempID > 0)) Then

Rem ## 可用数据

intTotalNum = intTotalNum + 1

curBillCostASP = curBillCostASP + curTempASPC

intTempCode = Trim(request.Form("fpmodel" & i))

intTempName = Trim(request.Form("fpvalue" & i))

intTempSpec = Trim(request.Form("fpspec" & i))

intTempUnit = Trim(request.Form("fpunit" & i))

ReDim Preserve arrRecordInfo(9, intTotalNum)

arrRecordInfo(0, intTotalNum) = intTempID

arrRecordInfo(1, intTotalNum) = intTempName

arrRecordInfo(2, intTotalNum) = intTempCode

arrRecordInfo(3, intTotalNum) = intTempSpec

arrRecordInfo(4, intTotalNum) = intTempUnit

arrRecordInfo(5, intTotalNum) = curTempPrice

arrRecordInfo(6, intTotalNum) = curTempTotal

arrRecordInfo(7, intTotalNum) = curTempCost

arrRecordInfo(8, intTotalNum) = curTempASPC

response.Write(intTempUnit & "
")

ElseIf (intTempID > 0) Then

intTempOut = intTempOut + 1

End If

Next

If intTotalNum < 1 Then

oUser.gs_AddMessage "操作单中无产品数据"

oUser.gs_AddMessage "共有 " & intTempOut & " 条数据(产品单价为0、为空或负数, 数量为0或空)被过滤"

oUser.gs_ShowMessage 1

End If

Rem ###############################################################################################

response.Write(UBound(arrRecordInfo, 2))

'response.End()

Rem ## 打开连接

f__OpenConn

Rem ###############################################################################################

Rem ## 检测表存在与否

Dim tblTableName

tblTableName = oUser.getBillTable(dtaBillYear)

Rem ###############################################################################################

Rem ###############################################################################################

Rem ## 构造单项目 SQL 语句 并保存

strBillCode = getOpeBill()

sql = "SELECT * FROM [" & GBL__STR_TAB_INF_BILL & "]"

Set rs = Server.CreateObject("Adodb.RecordSet")

rs.open sql, conn, 1, 3

rs.AddNew

rs("CustomerID") = intCustID

rs("CustomerName") = strCustName

rs("BitPlanID") = intBillPlanID

rs("BitPlanNum") = strBillPlanNum

rs("BitType") = intBillType

rs("BitName") = intBillValue

rs("BitCode") = strBillCode

rs("BitNum") = intTotalNum

rs("BitPrice") = curBillCost

rs("BitPriceASP") = curBillCostASP

rs("BitDate") = dtaBillDate

rs("BitPay") = strPayType

rs("BitContent") = strBillContent

rs("FillUser") = strBillUser

rs("SureUser") = strBillCheckUser

rs("UserID") = oUser.UID

rs("UserName") = oUser.UserName

rs.update

intBillID = rs("ID")

strBillCode = getBillNuber(intBillID)

rs("BitCode") = strBillCode

rs.update

rs.close

Rem ###############################################################################################

Rem ###############################################################################################

Rem ## 构造数据行 SQL 语句 并保存

For i = 1 to intTotalNum

sql = " insert into [" & tblTableName & "]" & _

" (BitType, BitValue, BitID, BitCode, ProductID, ProductName, ProductCode" & _

", ProductSpec, ProductUnit, ProductPrice, ProductNum, PriceCount, PriceASPC, BillDate)" & _

" Values(" & _

" " & intBillType & "" & _

", '" & toSqlr(intBillValue) & "'" & _

", " & intBillID & "" & _

", '" & toSqlr(strBillCode) & "'" & _

", " & arrRecordInfo(0, i) & "" & _

", '" & toSqlr(arrRecordInfo(1, i)) & "'" & _

", '" & toSqlr(arrRecordInfo(2, i)) & "'" & _

", '" & toSqlr(arrRecordInfo(3, i)) & "'" & _

", '" & toSqlr(arrRecordInfo(4, i)) & "'" & _

", " & arrRecordInfo(5, i) & "" & _

", " & arrRecordInfo(6, i) & "" & _

", " & arrRecordInfo(7, i) & "" & _

", " & arrRecordInfo(8, i) & "" & _

", #" & dtaBillDate & "#" & _

")"

conn.execute(sql)

Next

Rem ###############################################################################################

Rem ## 关闭连接

f__CloseConn

Rem ###############################################################################################

Rem ## 输出提示信息

oUser.gs_AddMessage "共有 " & intTempOut & " 条数据(产品单价为0、为空或负数, 数量为0或空)被过滤"

oUser.gs_AddMessage "共有 " & intTotalNum & " 项数据保存入库, 总价格:" & FormatNumber(curBillCost, 2, true) & "(" & FormatNumber(curBillCostASP, 2, true) & ")"

oUser.gs_AddMessage "查看此单(" & strBillCode & ")信息"

oUser.gs_AddMessage "打印此单"

oUser.gs_ShowMessage 0

Rem ###############################################################################################

%>

责任编辑:admin
相关文章