以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  DataColChanged 数据清空出现错误,请问怎么请除这个错误?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=126703)

--  作者:xflmp888
--  发布时间:2018/10/26 17:48:00
--  DataColChanged 数据清空出现错误,请问怎么请除这个错误?
Select Case e.DataCol.Name
       Case "设计流水号"
            Dim dr As DataRow 
    If e.DataCol.Name = "设计流水号" Then
                dr = e.DataTable.Find("设计流水号 = \'" & e.NewValue & "\'")
                If e.DataTable.Compute("Count([_Identify])","年份 = \'" & dr("年份") & "\' And 季节 = \'" & dr("季节") & "\'And 设计流水号 = \'" & dr("设计流水号")& "\'")   > 1    Then
                    MessageBox.Show("你输入的编号已经存在,请重新输入!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
                    e.DataRow(e.DataCol.Name) = e.OldValue \'取消输入
                End If
            End If
End Select


.NET Framework 版本:2.0.50727.5420
Foxtable 版本:2018.3.9.1
错误所在事件:表,款号领用表,DataColChanged
详细错误信息:
调用的目标发生了异常。
未将对象引用设置到对象的实例。

DataColChanged 数据清空出现错误,请问怎么请除这个错误? 只要不删除设计流水号,就不会出现,因为这个流水号不能自动分配,是人工分配的,但怕输入重复,所以设置了以上代码。请帮忙到底是什么原因导致了。

--  作者:xflmp888
--  发布时间:2018/10/26 17:48:00
--  
能不能不出现这个错误。
--  作者:xflmp888
--  发布时间:2018/10/26 17:49:00
--  

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

--  作者:有点蓝
--  发布时间:2018/10/26 20:29:00
--  
Select Case e.DataCol.Name
    Case "设计流水号"
        Dim dr As DataRow = e.DataRow
        
        If e.DataTable.Compute("Count([_Identify])","年份 = \'" & dr("年份") & "\' And 季节 = \'" & dr("季节") & "\'And 设计流水号 = \'" & dr("设计流水号")& "\'")   > 1    Then
            MessageBox.Show("你输入的编号已经存在,请重新输入!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
            e.DataRow(e.DataCol.Name) = e.OldValue \'取消输入
        End If
End Select

--  作者:xflmp888
--  发布时间:2018/10/27 14:48:00
--  
可以了,试试,我多加了
    If e.DataCol.Name = "设计流水号" Then
                dr = e.DataTable.Find("设计流水号 = \'" & e.NewValue & "\'")
           end if

删除就可以了。谢谢你!
[此贴子已经被作者于2018/10/27 14:51:48编辑过]