Foxtable(狐表)用户栏目专家坐堂 → [求助]职员名称重复后提示5遍


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

主题:[求助]职员名称重复后提示5遍

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


加好友 发短信
等级:九尾狐 帖子:2928 积分:20184 威望:0 精华:0 注册:2012/2/3 17:45:00
[求助]职员名称重复后提示5遍  发帖心情 Post By:2014/12/5 21:56:00 [只看该作者]

老师,
    下列代码放在 DataCol changing,当职员名称重复时,会出现MessageBox 提示1 出现4遍,提示2出现1遍,这是为什么。

Select Case e.DataCol.Name                                                                                         '判断编码和名称是否重复开始
    Case "编码名称"
        Dim dr As DataRow
        dr = e.DataTable.Find("编码名称 = '" & e.NewValue & "'")
        If dr IsNot Nothing Then
            MessageBox.Show("职员名称重复是否正确!","请确认")     ‘提示1
        end If
    Case "编码规则"
        Dim dr As DataRow
        dr = e.DataTable.Find("编码规则= '" & e.NewValue & "'")
        If dr IsNot Nothing Then
            MessageBox.Show("职员编码重复是否正确!","请确认")
            e.Cancel = True
         End If
End Select                                                                                                                     '判断编码和名称是否重复结束

If e.DataCol.Name = "编码名称" Then
    Dim dr As DataRow
    dr = e.DataTable.Find("编码名称 = '" & e.DataRow("编码名称") & "' and _Identify <> " & e.DataRow("_Identify"))
    If dr IsNot Nothing Then
        MessageBox.Show("职员姓名重复是否正确!","请确认")       ‘提示2
        e.Cancel=True
    End If
End If

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


加好友 发短信
等级:一尾狐 帖子:451 积分:3045 威望:0 精华:1 注册:2012/7/17 22:08:00
  发帖心情 Post By:2014/12/5 22:38:00 [只看该作者]

试试看这个
Select Case e.DataCol.Name                                                                                         '判断编码和名称是否重复开始
    Case "编码名称"
        Dim dr As DataRow
        dr = e.DataTable.Find("编码名称 = '" & e.NewValue & "'")
        If dr IsNot Nothing Then
            MessageBox.Show("职员名称重复是否正确!","请确认")     ‘提示1
            e.Cancel=True
        end If
    Case "编码规则"
        Dim dr As DataRow
        dr = e.DataTable.Find("编码规则= '" & e.NewValue & "'")
        If dr IsNot Nothing Then
            MessageBox.Show("职员编码重复是否正确!","请确认")
            e.Cancel = True
         End If
End Select

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


加好友 发短信
等级:九尾狐 帖子:2928 积分:20184 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2014/12/5 23:07:00 [只看该作者]

多了一个“ e.Cancel=True”,本例考虑有同名的人存在时是“友情提示”,不用 e.Cancel=True

[此贴子已经被作者于2014-12-5 23:35:55编辑过]

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


加好友 发短信
等级:九尾狐 帖子:2928 积分:20184 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2014/12/5 23:36:00 [只看该作者]

有点甜老师,
  是否为两个窗口同时不符合上述编码要求出现了提示?

 回到顶部