以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  库存量的判断  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=23725)

--  作者:xvkewen
--  发布时间:2012/9/18 9:28:00
--  库存量的判断

以下代码是在Datacolchanged事件中执行的。是哪里错了?为何总是总得不到库存不足的提示呢?

Dim po As String = e.DataRow("PO")
Dim ty As String = e.DataRow("material_type")
Dim name As String = e.DataRow("material_name")
Dim size As String = e.DataRow("material_size")
Dim color As String = e.DataRow("color")
Dim pdr As DataRow = DataTables("库存表").Find("PO = \'" & po & "\' And material_type = \'" & ty & "\' And material_name = \'" & name & "\' And material_size = \'" & size & "\' And material_color = \'" & color & "\'")

 

If e.DataCol.name = "quantity"  And pdr Is Nothing Then


If pdr("stocking_qty") < e.NewValue  Then


MessageBox.Show("库存不足")


End If

End If


--  作者:czy
--  发布时间:2012/9/18 9:57:00
--  
楼上的代码应该有问题的,pdr既然没有再接下去进行比较要出错的。
--  作者:czy
--  发布时间:2012/9/18 10:02:00
--  

这样看看

If e.DataCol.name = "quantity"
Dim po As String = e.DataRow("PO")
Dim ty As String = e.DataRow("material_type")
Dim name As String = e.DataRow("material_name")
Dim size As String = e.DataRow("material_size")
Dim color As String = e.DataRow("color")
Dim pdr As DataRow = DataTables("库存表").Find("PO = \'" & po & "\' And material_type = \'" & ty & "\' And material_name = \'" & name & "\' And material_size = \'" & size & "\' And material_color = \'" & color & "\'")
if pdr Isnot Nothing Then
If pdr("stocking_qty") < e.NewValue  Then
MessageBox.Show("库存不足")
End If
else
MessageBox.Show("没有符合条件的数据")
End If


--  作者:xvkewen
--  发布时间:2012/9/18 10:04:00
--  


图片点击可在新窗口打开查看此主题相关图片如下:库存表结构.jpg
图片点击可在新窗口打开查看
谢谢你的答复,不过还是得不到提示;我的出库表和库存表有关联和表达式;是否会对此有影响?我将条件改为

pdr("stocking_qty") < 0   也不行。怎么回事呀?


图片点击可在新窗口打开查看此主题相关图片如下:关联.jpg
图片点击可在新窗口打开查看

--  作者:xvkewen
--  发布时间:2012/9/18 10:52:00
--  
OK了,谢谢各位指教;