以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  请教:禁止重复(有条件的)  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=23820)

--  作者:飞天
--  发布时间:2012/9/20 18: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

 

以上代码是禁止当前表的产品编号的重复

 

我需要这样:表内有一个订单编号列.条件就是.在订单编号相同的情况下,禁止产品编号重复.应该加上什么样的代码呢


--  作者:czy
--  发布时间:2012/9/20 18:12:00
--  
If e.DataCol.Name = "产品编号" Then
    Dim dr As DataRow
    dr = e.DataTable.Find("订单编号 = \'" & e.DataRow("订单编号") & "\' and 产品编号 = \'" & e.NewValue & "\'")
    If dr IsNot Nothing Then
        MessageBox.Show("此产品编号已经存在!")
        e.Cancel = True
    End If
End If

--  作者:狐狸爸爸
--  发布时间:2012/9/20 18:13:00
--  
If e.DataCol.Name = "产品编号" Then
    Dim dr As DataRow
    dr = e.DataTable.Find("产品编号 = \'" & e.NewValue & "\' And 订单编号= \'" & e.DataRow("订单编号") & "\'")
    If dr IsNot Nothing Then
        MessageBox.Show("此产品编号已经存在!")
        e.Cancel = True
    End If
End If

--  作者:程兴刚
--  发布时间:2012/9/20 20:35:00
--  
列属性不是有禁止重复属性吗?