以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  datarowdeleting 问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=133731)

--  作者:edisontsui
--  发布时间:2019/4/19 9:03:00
--  datarowdeleting 问题
\'自动更新销售单的要求生产数量
If e.DataRow("销售单号") = ""
    Else
    Dim dr As DataRow = DataTables("销售单").find("销售单号 = \'" & e.DataRow("销售单号") & "\' And 销售单行号 = \'" & e.DataRow("行号") & "\' And 产品代号 = \'" & e.DataRow("产品代号") & "\'")
    dr("要求生产数") = dr("要求生产数") - e.DataRow("要求生产数量")
End If

我的dataroldeleting里面有如上代码,执行时出现下面的警告:

.NET Framework 版本:2.0.50727.8793
Foxtable 版本:2017.3.18.1
错误所在事件:表,生产指令,DataRowDeleting
详细错误信息:
调用的目标发生了异常。
未将对象引用设置到对象的实例。

请问是哪里的问题?谢谢。

--  作者:有点甜
--  发布时间:2019/4/19 9:44:00
--  


If e.DataRow("销售单号") = ""
Else
    Dim dr As DataRow = DataTables("销售单").find("销售单号 = \'" & e.DataRow("销售单号") & "\' And 销售单行号 = \'" & e.DataRow("行号") & "\' And 产品代号 = \'" & e.DataRow("产品代号") & "\'")
    If dr IsNot Nothing Then
        dr("要求生产数") = dr("要求生产数") - e.DataRow("要求生产数量")
    Else
        msgbox("没找到")
    End If
End If

 


--  作者:edisontsui
--  发布时间:2019/4/19 9:58:00
--  
上述代码运行后,会出现“没找到”的警告框。     我将  msgbox("没找到") 改成 e.Cancel = True,就没事了。