以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  关于对象引用错误提示的修改  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=63364)

--  作者:peterx
--  发布时间:2015/1/19 16:08:00
--  关于对象引用错误提示的修改
下代码当名称为 空  值,出现如下错误,请问如何修改代码?

“未将对象引用设置到对象的实例。”


Dim dr As DataRow
Dim name As String =Tables("购置申请管理").Current("申请人姓名")
dr = DataTables("内部通讯录").Find("姓名 = \'" & name & "\'")
If dr IsNot Nothing Then \'如果找到的话
    Dim Result As DialogResult
    Result = MessageBox.Show("用户已经存在,更新信息吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
    If Result = DialogResult.Yes Then
        Forms("内部通讯录扩充").open
    Else
        MessageBox.Show("好的,听你的!","提示")
    End If
Else
    MessageBox.show("添加新记录!")
    Tables("内部通讯录").AddNew()
    Tables("内部通讯录").Current("姓名")= name
    Dim max As Integer = Tables("内部通讯录").Compute("Max(序号)")
    Tables("内部通讯录").Current("序号")=max+1
    Forms("内部通讯录扩充").open
End If

--  作者:Bin
--  发布时间:2015/1/19 16:10:00
--  
if Tables("购置申请管理").Current.isnull("申请人姓名")=false then
   Dim dr As DataRow
Dim name As String =Tables("购置申请管理").Current("申请人姓名")
dr = DataTables("内部通讯录").Find("姓名 = \'" & name & "\'")
If dr IsNot Nothing Then \'如果找到的话
    Dim Result As DialogResult
    Result = MessageBox.Show("用户已经存在,更新信息吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
    If Result = DialogResult.Yes Then
        Forms("内部通讯录扩充").open
    Else
        MessageBox.Show("好的,听你的!","提示")
    End If
Else
    MessageBox.show("添加新记录!")
    Tables("内部通讯录").AddNew()
    Tables("内部通讯录").Current("姓名")= name
    Dim max As Integer = Tables("内部通讯录").Compute("Max(序号)")
    Tables("内部通讯录").Current("序号")=max+1
    Forms("内部通讯录扩充").open
End If
end if