以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  列属性明明设的是禁止重复,结果有些还是重复了,怎么办  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=20906)

--  作者:sxdoc
--  发布时间:2012/6/22 20:56:00
--  列属性明明设的是禁止重复,结果有些还是重复了,怎么办
列属性明明设的是禁止重复,结果有些还是重复了,怎么办
--  作者:程兴刚
--  发布时间:2012/6/22 21:02:00
--  
那是不可能的,难道是先输入重复的数据再改列属性为禁止重复的bug?
--  作者:sunbrain
--  发布时间:2012/6/22 23:04:00
--  
以下是引用程兴刚在2012-6-22 21:02:00的发言:
那是不可能的,难道是先输入重复的数据再改列属性为禁止重复的bug?

如果这样,你检查一下数据
再不行参考

If e.DataCol.Name = "订单号" Then
    Dim dr As
DataRow
    dr = e.
DataTable.Find("订单号 = \'" & e.NewValue & "\'")
    If dr IsNot Nothing Then
        MessageBox.Show(
"此订单号已经存在!")
        e.Cancel = True
    End If
End If 


--  作者:pc005637
--  发布时间:2012/6/23 20:15:00
--  禁止重复只是禁止手动输入时不能输入重复数据。
如果是代码添加的数据,或者是复制粘贴的数据,是不作校验的。
--  作者:sxdoc
--  发布时间:2012/6/23 21:01:00
--  
已经重复的编码如何处理,有没办法将编码重新自动编制一次
--  作者:pc005637
--  发布时间:2012/6/24 10:44:00
--  可以用序列填充功能,重新编码的。

可以用序列填充功能,重新编码的。

 

或者根据实际情况,手工修改。


--  作者:sxdoc
--  发布时间:2012/6/25 13:56:00
--  

谢谢都解决了

 


--  作者:Fotable
--  发布时间:2012/10/3 23:48:00
--  
以下是引用sunbrain在2012-6-22 23:04:00的发言:

如果这样,你检查一下数据
再不行参考

If e.DataCol.Name = "订单号" Then
    Dim dr As
DataRow
    dr = e.
DataTable.Find("订单号 = \'" & e.NewValue & "\'")
    If dr IsNot Nothing Then
        MessageBox.Show(
"此订单号已经存在!")
        e.Cancel = True
    End If
End If 

这个是在什么事件中


--  作者:y2287958
--  发布时间:2012/10/4 6:45:00
--  
datacolchanged