以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  大神,帮忙看看两个代码,一个是正确执行的,另一个是报错  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=158382)

--  作者:夜点蚊香
--  发布时间:2020/11/18 11:22:00
--  大神,帮忙看看两个代码,一个是正确执行的,另一个是报错
第一个正确的,员工信息表

窗口按钮不保存执行代码如下
If Tables("学员管理_学员信息表").Current.DataRow.RowState = DataRowState.Added Then
    Tables("学员管理_学员信息表").Current.Delete()
End If
e.Form.Close

关闭窗口代码如下
If Tables("学员管理_学员信息表").Current.DataRow.RowState = DataRowState.Added Then
    Tables("学员管理_学员信息表").Current.Delete()
End If

以上代码不保存退出的时候,可以正常执行删除新增行.

另一个窗口
窗口按钮不保存执行代码如下
If Tables("提成核算标准").Current.DataRow.RowState = DataRowState.Added Then
    Tables("提成核算标准").Current.Delete()
End If
e.Form.Close

关闭窗口代码如下
If Tables("提成核算标准").Current.DataRow.RowState = DataRowState.Added Then
    Tables("提成核算标准").Current.Delete()
End If

点击右上下关闭窗口可以正常执行删除新增行.
点击窗口的不保存按钮的时候 报错, 报错代码如下

未将对象引用设置到对象的实例。
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2020.5.29.8
错误所在事件:窗口,提成标准新增窗口,BeforeClose
详细错误信息:
未将对象引用设置到对象的实例。

出错原因,第二表是个新表,第一次填写数据的时候会报错.请问怎么规避了一下.
[此贴子已经被作者于2020/11/18 11:31:52编辑过]

--  作者:有点蓝
--  发布时间:2020/11/18 11:43:00
--  
If Tables("提成核算标准").Current isnot nothing andalso Tables("提成核算标准").Current.DataRow.RowState = DataRowState.Added Then
    Tables("提成核算标准").Current.Delete()
End If


--  作者:夜点蚊香
--  发布时间:2020/11/19 8:20:00
--  
谢谢,已经解决