输入参数值
Enter parameter value
我正在使用 MS Access 2007。我有一个名为 qryUPDATESTOCKS
的查询,它根据 table 订单的数量减少 table 产品的库存。
查询:
UPDATE tblPRODUCTS SET tblPRODUCTS.Stock = tblPRODUCTS.Stock-tblORDER.Quantity
WHERE tblORDER.ProductID=tblPRODUCTS.ProductID;
为了 运行 保存订单时的这个查询,我在我的保存按钮中添加了一个操作 OpenQuery
,运行 是查询。
但是当我点击保存订单按钮时,会出现一个对话框说"Enter Parameter Value"。如何防止它弹出?
您需要 运行 VBA 中的操作查询,例如
Private Sub orderSaveButtonName_Click()
Dim totAvailable As Long
totAvailable = Nz(DSum("Stock", "tblPRODUCTS", "tblPRODUCTS.ProductID = '" & _
Me.ProductID & "'"), 0)
CurrentDB.Execute "UPDATE tblProducts SET Stock = " & totAvailable - Me.Quantity & _
" WHERE tblPRODUCTS.ProductID = '" & Me.ProductID & "'"
End Sub
或者如果要在Query里做,需要传递order Number,用一个SubQuery来获取要带走的商品数量。这可能很复杂,使用 VBA 是直接的解决方案。
我正在使用 MS Access 2007。我有一个名为 qryUPDATESTOCKS
的查询,它根据 table 订单的数量减少 table 产品的库存。
查询:
UPDATE tblPRODUCTS SET tblPRODUCTS.Stock = tblPRODUCTS.Stock-tblORDER.Quantity
WHERE tblORDER.ProductID=tblPRODUCTS.ProductID;
为了 运行 保存订单时的这个查询,我在我的保存按钮中添加了一个操作 OpenQuery
,运行 是查询。
但是当我点击保存订单按钮时,会出现一个对话框说"Enter Parameter Value"。如何防止它弹出?
您需要 运行 VBA 中的操作查询,例如
Private Sub orderSaveButtonName_Click()
Dim totAvailable As Long
totAvailable = Nz(DSum("Stock", "tblPRODUCTS", "tblPRODUCTS.ProductID = '" & _
Me.ProductID & "'"), 0)
CurrentDB.Execute "UPDATE tblProducts SET Stock = " & totAvailable - Me.Quantity & _
" WHERE tblPRODUCTS.ProductID = '" & Me.ProductID & "'"
End Sub
或者如果要在Query里做,需要传递order Number,用一个SubQuery来获取要带走的商品数量。这可能很复杂,使用 VBA 是直接的解决方案。