在DataColChanged 事件里放了以下代码,希望起到的作用是如果出货数量大于库存数量就取消编辑, 但是我的代码不起作用呀,请高手看下问题在哪里.
未交货数量=订货数量-累计出货数量
库存数量来源于成品库存表,累计出货数量和订货数量来源于订单明细表。
If e.DataCol.Name = "交货数量" Then
Dim filters As String
Dim drs As DataRow = e.DataRow
Dim prs As DataRow
filters = " 客户订单号 = '" & drs("客户订单号") & "' And 客户产品号 = '" & drs("客户产品号") & "' And 订单行号 = '" & drs("订单行号") & "'"
prs = DataTables("订单明细表").Find(filters) '在订单明细表中筛选出符合要求的数据
drs("订货数量") = prs("订货数量") '取得该产品的订货数量
If e.DataRow("未交货数量") < 0 Then
msgbox("出货数量大于订单数量,请注意核实")
End If
If e.DataRow("库存数量") < 0 Then
msgbox("出货数量大于库存数量,请修改出库数量或先完成入库操作")
e.cancel=True
Return
End If
End If
End If
现在如果输入的出货数量导致库存数小于0,会提示 “出货数量大于库存数量,请修改出库数量或先完成入库操作”,但是不会取消编辑,也可以保存,这个如何改下可以不允许保存并且取消编辑不允许输入 会导致库存数小于0的出货数呢?
[此贴子已经被作者于2014-12-20 16:57:32编辑过]