Foxtable(狐表)用户栏目专家坐堂 → [求助]双重条件下的重复值判断


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

主题:[求助]双重条件下的重复值判断

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


加好友 发短信
等级:婴狐 帖子:1 积分:70 威望:0 精华:0 注册:2019/2/25 18:41:00
[求助]双重条件下的重复值判断  发帖心情 Post By:2019/2/25 18:58:00 [只看该作者]

 
如下图,表中有姓名,身份证号码,人员状态3个列,其中人员状态有“正常”和“离开”“注销”三种值
请问如何实现以下功能:
      1、不管以哪种方式输入,人员状态为“正常”的,身份证号码不能存在相同的号码(即重复值),且转到已有那个行;
      2、不管以哪种方式输入,人员状态为“离开”或“注销”的,可以存在相同的身份证号码;
多谢了各位。
 

此主题相关图片如下:捕获.png
按此在新窗口浏览图片
[此贴子已经被作者于2019/2/25 19:04:54编辑过]

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


加好友 发短信
等级:三尾狐 帖子:651 积分:7622 威望:0 精华:0 注册:2013/12/11 17:49:00
  发帖心情 Post By:2019/2/25 19:22:00 [只看该作者]

DataColChanged

 

 

Select Case e.DataCol.name
    Case "身份证号码","人员状态"
        Dim dr As DataRow = e.DataRow
        If dr.IsNull("身份证号码") = False AndAlso dr.IsNull("人员状态") = False Then
            If e.DataTable.Compute("Count([_Identify])","身份证号码 = '" & dr("身份证号码") & "' And 人员状态 = '正常'") > 1 Then
                MessageBox.Show("已经存在相同身份证号码和人员状态的行!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
                e.DataRow(e.DataCol.Name) = e.OldValue '取消输入
            End If
        End If
End Select


 回到顶部