Foxtable(狐表)用户栏目专家坐堂 → 自动编号的问题(关于_Indentify)


  共有2232人关注过本帖树形打印复制链接

主题:自动编号的问题(关于_Indentify)

帅哥哟,离线,有人找我吗?
昱飞哥
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:324 积分:2504 威望:0 精华:0 注册:2020/3/2 23:15:00
自动编号的问题(关于_Indentify)  发帖心情 Post By:2020/9/17 8:58:00 [只看该作者]

我希望客户信息表每增加一行,新增加的那行里的“客户编号”自动填入当前行的“_Indentify”的值,于是我在“客户信息表”的dataRowAdded事件写代码:
Dim dr As DataRow = e.DataRow
dr("客户编号") = dr("_Identify")

因为“客户编号”是不能重复的,所以,又在DataColChanging事件写代码:
If e.DataCol.Name = "客户编号" Then
    Dim dr As DataRow
    dr = e.DataTable.Find("客户编号 = '" & e.NewValue & "' And [_Identify] <> " & e.DataRow("_Identify") ) '如果在"客户编号"列能找到与新输入的值一样的值
    If dr IsNot Nothing Then
        MessageBox.Show("此客户编号已经存在,不可新增!")
        e.Cancel = True
    End If
End If

但是有个问题,本身("_Identify")应该是独一无二,不会重复的,也就是说上面这段DataColChanging事件代码应该可以不用写才对,然而,实际情况是,有时候新增一行,却会提示("此客户编号已经存在,不可新增!"),这是什么情况?

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105495 积分:536466 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/9/17 9:34:00 [只看该作者]

dataRowAdded事件写代码:
Dim dr As DataRow = e.DataRow
dr.save ‘没有保存之前_Identify都是假的值
dr("客户编号") = dr("_Identify")

 回到顶部
帅哥哟,离线,有人找我吗?
昱飞哥
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:324 积分:2504 威望:0 精华:0 注册:2020/3/2 23:15:00
  发帖心情 Post By:2020/9/17 19:06:00 [只看该作者]

谢谢老师,终于明白了

 回到顶部