以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  重置列单价不变更  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=187729)

--  作者:DLW77
--  发布时间:2023/8/7 15:54:00
--  重置列单价不变更
老师,您好,我在DataColChanged写了以下代码
Select Case e.DataCol.Name
    Case "主件品号","子件品号"
        Dim dr As DataRow = e.DataRow
        Dim pr As DataRow
        If dr.IsNull("主件品号") OrElse dr.IsNull("子件品号") Then
            dr("单价") = Nothing
        Else
            Dim filter As String
            filter = "品号 = \'" & dr("子件品号")  & "\'"
            pr = DataTables("采购订单").Find(filter,"采购日期 desc")
            If pr IsNot Nothing Then
                dr("单价") = pr("单价")
            End  If
        End  If
End Select
我之前点击子件品号,重置列时,列出了单价是5.01,但发现价格是错的,重新点击子件品号,重置列时,列出的单价还是5.01没有变。但我知道实际的单价是O.
我将904056301X1这个编码删除,重新现录入时,单价就是O了,是不是代码哪里有问题?
图片点击可在新窗口打开查看此主题相关图片如下:904056301x1.png
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2023/8/7 16:00:00
--  
说明"采购订单"没有符合这个品号的数据。或者是查询出来的单价就是这个值
--  作者:DLW77
--  发布时间:2023/8/7 17:42:00
--  
老师,在单价中如果之前有金额的,在子件品号,点重置列,单价是没改变的。但如果我删除子件品号时单价就会变为空白,再录入这个子件品号,他就会根据采购订单的金额查询显示出来。为什么我用重置列会没改变?是不是我代码哪里错了?
--  作者:有点蓝
--  发布时间:2023/8/7 20:25:00
--  
代码看不出什么问题,请做个例子发上来看看