purchase_input_master.inc
来自「物业管理和办公自动化系统」· INC 代码 · 共 351 行 · 第 1/2 页
INC
351 行
Paginate(sFileName, sFormParams, sSortParams, iCurrentPage, iTotalPages) & _
" </td></tr>"
TableRecords = _
sTemp & _
" <input type=""hidden"" name=""rowcount"" value=""" & rowCount & """>"
End Function
'*********************************************************************************************
Function InputAction()
InputAction = _
"<table cellspacing=0 cellpadding=3 width=""100%"" align=center border=0>" & vbLF & _
" <tr height=30 bgcolor=white>" & vbLF & _
" <td align=center colspan=9>" & _
" <span style=""cursor:hand"" title=""设置清单细节,然后点击按钮入库"" onclick=""btnInput_OnClick();""><img border=0 src=""../images/arrowr.gif"" style=""vertical-align:middle"">生成入库单</span>" & _
" " & vbLF & _
" <span style=""cursor:hand"" title=""放弃入库!"" onclick=""btnCancel_OnClick();""><img border=0 src=""../images/delete.gif"" style=""vertical-align:middle"">放弃入库</span>" & _
" </td>" & _
" </tr>" & vbLF & _
" <tr height=10 bgcolor=white><td colspan=9></td></tr>" & vbLF & _
"</table>" & _
"</form>"
End Function
'*********************************************************************************************
Function DoInput()
dim sSQL1,sSQL2,sSQL3,sql
dim j, rowCount, sCargoID, sCargoName,sSheetID ,sModel, sUnit, sQuantity, sUnitPrice, sRemark
dim sGoodsID,sGSheetID,sGQuantity,sGUnitPrice,sGoodsDesp,sIsEquip,sGoodsType,sMinQuantity,sBestBefore,sGRemark,sDepotID,sLocation,sKeeper
dim sInputSheetID,sPurchaseTime,sSupplier
''-----------------------------------------------------------------------------
'' 将新建入库单抬头信息加入t_stock_master
''-----------------------------------------------------------------------------
sql = "select depot_name from t_depot where depot_id =" & pDepotID
sDepotID = DLookUp(conn,sql)
sSQL1 = "insert into t_stock_master(optype,department,buyer,checker,keeper,sheet_status)" & _
" values(1," & ToSQL(sDepotID,"text") & "," & ToSQL(pBuyer,"text") & _
"," & ToSQL(pChecker,"text") & "," & ToSQL(pKeeper,"text") & ",0)"
call Openrs(conn,sSQL1)
''-----------------------------------------------------------------------------
'' 将新入库物品信息加入库存t_goods
''-----------------------------------------------------------------------------
rowCount = GetParam("rowcount")
sql = "select Max(sheet_id) from t_stock_master"
sGSheetID = DLookUp(conn,sql)
for j = 1 to Cint(rowCount) step 1
sCargoID = GetParam("cargo_id_" & Trim(j))
sSQL2 = "select cargo_name,model,quantity,unit,unit_price,sheet_id from t_purchase_detail where cargo_id = " & sCargoID
dim rs : set rs = Openrs(conn, sSQL2)
if Not rs.EOF then
sCargoName = rs("cargo_name")
sSheetID = rs("sheet_id")
sModel = rs("model")
sUnit = rs("unit")
sQuantity = GetValue(rs,"quantity")
sUnitPrice = GetValue(rs,"unit_price")
end if
rs.Close()
set rs = nothing
sql = "select goods_type from t_purchase_master where sheet_id =" & sSheetID
sGoodsType = DLookUp(conn,sql)
sql = "select purchase_time from t_purchase_master where sheet_id =" & sSheetID
sPurchaseTime = DLookUp(conn,sql)
sql = "select supplier from t_purchase_master where sheet_id =" & sSheetID
sSupplier = DLookUp(conn,sql)
'' 提醒状态分类,0不需提醒,1正常,2已提醒,3采购中
sql = "select * from t_goods where goods_name =" & ToSQL(sCargoName,"text") & _
" and model =" & ToSQL(sModel,"text") & _
" and unit =" & ToSQL(sUnit,"text") & _
" and remind_status = 3"
' response.write sql :response.end
set rs = Openrs(conn, sql)
sMinQuantity = GetParam("min_quantity_" & Trim(j))
sGRemark = GetParam("remark_" & Trim(j))
sLocation = GetParam("location_" & Trim(j))
'' 判断所采购物品是否在库中,是的话update,否则insert
if Not rs.EOF then
sGoodsID = GetValue(rs,"goods_id")
sGQuantity = GetValue(rs,"quantity")
sGUnitPrice = GetValue(rs,"unit_price")
sGUnitPrice = (sUnitPrice * sQuantity + sGUnitPrice * sGQuantity)/(sGQuantity + sQuantity)
sGQuantity = sGQuantity + sQuantity
sSQL2 = "update t_goods set quantity =" & ToSQL(sGQuantity,"number") & _
",unit_price =" & ToSQL(sGUnitPrice,"number") & _
",min_quantity =" & ToSQL(sMinQuantity,"number") & _
",remark =" & ToSQL(sGRemark,"text") & _
",location =" & ToSQL(sLocation,"text") & _
",remind_status = '1'" & _
",current_status = 1" & _
" where goods_id =" & ToSQL(sGoodsID,"number")
'response.write sSQL2 :response.end
call Openrs(conn,sSQL2)
else
sSQL2 = "insert into t_goods(goods_name,model,unit,quantity" & _
",goods_type,min_quantity,unit_price,remark,is_equip" & _
",remind_status,depot_id,location,keeper,input_method,current_status)" & _
" values(" & ToSQL(sCargoName,"text") & _
"," & ToSQL(sModel,"text") & _
"," & ToSQL(sUnit,"text") & _
"," & ToSQL(sQuantity,"number") & _
"," & ToSQL(sGoodsType,"number") & _
"," & ToSQL(sMinQuantity,"number") & _
"," & ToSQL(sUnitPrice,"number") & _
"," & ToSQL(sGRemark,"text") & _
"," & ToSQL(pIsEquip,"number") & _
",'1'" & _
"," & ToSQL(pDepotID,"number") & _
"," & ToSQL(sLocation,"text") & _
"," & ToSQL(pKeeper,"text") & _
",1,1)"
'response.write sSQL2 :response.end
call Openrs(conn,sSQL2)
sql = "select Max(goods_id) from t_goods"
sGoodsID = DLookUp(conn,sql)
end if
rs.Close()
set rs = nothing
''-----------------------------------------------------------------------------
'' 将新入库物品信息加入t_stock_detail
''-----------------------------------------------------------------------------
sql = "select Max(sheet_id) from t_stock_master"
sInputSheetID = DLookUp(conn,sql)
sSQL3 = "insert into t_stock_detail(goods_id,sheet_id,goods_name,model" & _
",unit,quantity,unit_price,goods_type,depot,location,opdate,remark,purchase_date,supplier)" & _
" values(" & ToSQL(sGoodsID,"number") & _
"," & ToSQL(sInputSheetID,"number") & _
"," & ToSQL(sCargoName,"text") & _
"," & ToSQL(sModel,"text") & _
"," & ToSQL(sUnit,"text") & _
"," & ToSQL(sQuantity,"number") & _
"," & ToSQL(sUnitPrice,"number") & _
"," & ToSQL(sGoodsType,"number") & _
"," & ToSQL(pDepotID,"number") & _
"," & ToSQL(sLocation,"text") & _
"," & ToSQL(pOpdate,"text") & _
"," & ToSQL(sGRemark,"text") & _
"," & ToSQL(sPurchaseTime,"text") & _
"," & ToSQL(sSupplier,"number") & _
")"
'response.write sSQL3 :response.end
call Openrs(conn,sSQL3)
''-----------------------------------------------------------------------------
'' 将采购单上(t_purchase_detail)入库的物品状态设为"2"已入库
''-----------------------------------------------------------------------------
sql = "update t_purchase_detail set is_input = 2 where cargo_id =" & sCargoID
'response.write sql :response.end
call Openrs(conn,sql)
sql = "select * from t_purchase_detail where is_input = 0 and sheet_id =" & sSheetID
set rs = Openrs(conn,sql)
if rs.EOF then
sql = "update t_purchase_master set sheet_status = '入库' where sheet_id =" & sSheetID
call Openrs(conn,sql)
end if
rs.Close()
set rs = nothing
next
response.redirect "sheet_goto.asp?sheet_id=" & sGSheetID
End Function
'******************************************************************************
Sub Cancel()
dim sql
sql = "update t_purchase_detail set is_input = 0 where is_input = 1"
call Openrs(conn,sql)
response.redirect "purchase_input.asp"
End Sub
%>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?