以文本方式查看主题

-  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=177818)

--  作者:有点灰2
--  发布时间:2022/6/6 12:43:00
--  程序不运行


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

图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20220606123943.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20220606123949.png
图片点击可在新窗口打开查看
我这几个附表都有数据  程序写完了系统也不报错  为啥不运行呢 

If e.DataCol.Name = "材料类型" Then
    If  e.DataRow("材料类型") = "检具"
        Dim drm As DataRow
        drm = DataTables("检具表").Find("[物料名称]= \'" & e.NewValue & "\' And  [规格型号]= \'" & e.NewValue & "\' ", "[_SortKey] Desc" )
        If drm IsNot Nothing Then
            e.DataRow("现有库存数量") = drm("库存数量")
        End If
    ElseIf   e.DataRow("材料类型") = "刀具"
        Dim drn As DataRow
        drn = DataTables("检具表").Find("[物料名称]= \'" & e.NewValue & "\' And  [规格型号]= \'" & e.NewValue & "\' ", "[_SortKey] Desc" )
        If drn IsNot Nothing Then
            e.DataRow("现有库存数量") = drn("库存数量")
        End If
    Else
        e.DataRow("材料类型") = "辅料"
        Dim drt As DataRow
        drt = DataTables("辅料表").Find("[物料名称]= \'" & e.NewValue & "\' And  [规格型号]= \'" & e.NewValue & "\' ", "[_SortKey] Desc" )
        If drt IsNot Nothing Then
            e.DataRow("现有库存数量") = drt("库存数量")
        End If
    End If
End If


--  作者:有点蓝
--  发布时间:2022/6/6 13:47:00
--  
调试

If e.DataCol.Name = "材料类型" Then
msgbox(e.DataRow("材料类型") )
msgbox(e.NewValue )
    If  e.DataRow("材料类型") = "检具"
        Dim drm As DataRow
msgbox("[物料名称]= \'" & e.NewValue & "\' And  [规格型号]= \'" & e.NewValue & "\' ")
        drm = DataTables("检具表").Find("[物料名称]= \'" & e.NewValue & "\' And  [规格型号]= \'" & e.NewValue & "\' ", "[_SortKey] Desc" )
        If drm IsNot Nothing Then
            e.DataRow("现有库存数量") = drm("库存数量")
        End If

        drm = DataTables("检具表").Find("[物料名称]= \'" & e.DataRow("物料名称") & "\' And  [规格型号]= \'" & e.DataRow("规格型号") & "\' ", "[_SortKey] Desc" )

--  作者:有点灰2
--  发布时间:2022/6/6 16:45:00
--  
e.NewValue 跟 \'" & e.DataRow("规格型号") & "\' 跟这个有什么区别吗
--  作者:有点蓝
--  发布时间:2022/6/6 17:19:00
--  
 e.DataRow("规格型号") 是知道列名取数据

指的是触发事件的列的数据,前面有判断If e.DataCol.Name = "材料类型" Then,那就是"材料类型"这个列的数据,自己调试看看弹出的数据就明白了