VB函数给出错误-查询表达式'[!D]'= 123 AND [POID] =&MfrOrderID&3075中的语法错误缺少运算符–

问题描述

我试图获取履行生产订单所需的原材料的值,使用此简单函数查询获取值,产品配方以所需的数量im存储在另一个表中

Function GetRMWt(ProductID) As Long
    GetRMWt = DLookupNumberWrapper("[RM Req]","RMCalc","[ID]=" & ProductID & " AND [POID] = & MfrOrderID &")
End Function   

调用函数获取

Private Sub Product_ID_AfterUpdate()
    If Not IsNull(Me![Product ID]) Then
        Me![Quantity] = GetRMWt(Me![Product ID])
        Me.Quantity.Locked = False
        Me![Unit Price] = GetListPrice(Me![Product ID])
        Me![discount] = 0
        Me![Status ID] = None_OrderItemStatus
    Else
        eh.TryToruncommand acCmdDeleteRecord
    End If
End Sub

这是获取所需数据的查询

SELECT Products.ID,ProductReceipe.PID,ProductReceipe.[Product ID],[Mfr Order Details].Quantity AS [Item Qty],ProductReceipe.Quantity AS [RM Qty],([Item Qty] * [RM Qty] / 1000) AS [RM Req],[Mfr Order Details].[Mfr Order ID] AS POID,IGROrders.[IGR Order ID]
FROM ProductReceipe,[Mfr Order Details],[Mfr Orders],IGROrders,Products
WHERE ProductReceipe.PID ) = [Mfr Order Details].[Product ID]
    AND [Mfr Orders].[Mfr Order ID] = [Mfr Order Details].[Mfr Order ID]
    AND [Mfr Orders].[Mfr Order ID] = [IGROrders].[Mfr Order ID]
    AND Products.ID = ProductReceipe.[Product ID]

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)