Foxtable(狐表)用户栏目专家坐堂 → [求助]怎样控制输入重复数据


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

主题:[求助]怎样控制输入重复数据

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


加好友 发短信
等级:幼狐 帖子:72 积分:614 威望:0 精华:0 注册:2009/5/23 10:22:00
[求助]怎样控制输入重复数据  发帖心情 Post By:2009/6/20 19:09:00 [只看该作者]

使用窗口录入,窗口中一个TextBox控件, 在TextBox的ValueChanged 事件中,控制重复的输入,

假如,在表中有一个客户编号列,已有一条记录Cs01 如果在TextBox控制中输入Cs01,发生ValueChanged事件后,会提示客户记录已存在!


 回到顶部
美女呀,离线,留言给我吧!
yangming
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2009/6/20 23:55:00 [只看该作者]

Dim dr As DataRow
With e.Form.Controls("TextBox1")
dr = DataTables("表A").Find("客户= '" & .Value & "'")
If dr IsNot Nothing Then '如果找到的话
  MessageBox.Show("客户记录已存在!", "提示")
 End If
End With

 回到顶部
美女呀,离线,留言给我吧!
yangming
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2009/6/21 0:04:00 [只看该作者]

看看这个:
Dim dr As DataRow
Dim r As Row = CurrentTable.Rows(CurrentTable.Rows.Count-1)
With e.Form.Controls("TextBox1")
dr = DataTables("表A").Find("客户= '" & .Value & "'")
If dr IsNot Nothing Then '如果找到的话
  MessageBox.Show("客户记录已存在!", "提示")
 r("客户") = ""
 End If
End With

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


加好友 发短信
等级:幼狐 帖子:72 积分:614 威望:0 精华:0 注册:2009/5/23 10:22:00
  发帖心情 Post By:2009/6/21 8:04:00 [只看该作者]

多谢Yang版,有这个语句控制会有问题 ,这是我用的语句

Dim Txtb As WinForm.TextBox = e.Sender
Dim Index As Integer
Index = Tables("客户信息表").FindRow("[客户编号]= '" & Txtb.Value & "'",0,True)
If Index >=0
    MessageBox.Show("该客户编号已存在!","警告")
    Txtb.Value = Nothing
    Txtb.Select()
    Return
End If

遇到一个问题, 在建立的一个编辑窗口中,假设原来有一条记录,客户编号为3,现改为我,再点取消,就会弹出  "客户编号已存在!"的警告.
这个控制不像在易表中,这个FindRow不像易表中的可以找第几行记录,

如何改成 FindRow("[客户编号]= '" & Txtb.Value & "'",1,True) 的话,有输入第2个相同的客户编号时也不会弹出 窗口

 回到顶部
美女呀,离线,留言给我吧!
yangming
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2009/6/21 9:19:00 [只看该作者]

上传你的文件看看吧,从你的代码看,你需要的是查到相同编号后就将光标定位到文本框中,并不是到找到的那一行啊


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


加好友 发短信
等级:幼狐 帖子:72 积分:614 威望:0 精华:0 注册:2009/5/23 10:22:00
  发帖心情 Post By:2009/6/21 16:07:00 [只看该作者]

是的,我的代码是,当前行绑定的TextBox中输入一个客户编号,如果这个客户编号已经存在,就把这个TextBox清空,然后把光标定位到这个TextBox

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/6/21 16:12:00 [只看该作者]

列属性不是由禁止输入重复内容的设置吗?


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


加好友 发短信
等级:幼狐 帖子:72 积分:614 威望:0 精华:0 注册:2009/5/23 10:22:00
  发帖心情 Post By:2009/6/21 16:16:00 [只看该作者]

是的,可没有提示,呵呵!

 回到顶部