以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  三个字段相同 提示已经存在  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=158416)

--  作者:青丘狐
--  发布时间:2020/11/19 12:29:00
--  三个字段相同 提示已经存在

Select Case e.DataCol.Name
    Case "货物名称","牌号","规格型号"
        Dim dr As DataRow
        dr = e.DataTable.Find("规格型号 = \'" & e.NewValue & "\'" And "货物名称 = \'" & e.NewValue & "\'" And "牌号 = \'" & e.NewValue & "\'" )
        If dr IsNot Nothing Then
            MessageBox.Show("此货物名称已经存在!")
            e.Cancel = True
        End If
End Select

 

请老师帮下要怎样写


--  作者:有点蓝
--  发布时间:2020/11/19 13:46:00
--  
再看几遍:http://www.foxtable.com/webhelp/topics/1284.htm

dr = e.DataTable.Find("规格型号 = \'" & e.DataRow("规格型号") & "\' And 货物名称 = \'" & e.DataRow("货物名称") & "\' And 牌号 = \'" & e.DataRow("牌号") & "\'" )

--  作者:青丘狐
--  发布时间:2020/11/19 14:17:00
--  
Select Case e.DataCol.name
    Case "货物名称","牌号","规格型号"
        If e.DataRow.IsNull("货物名称") =False AndAlso e.DataRow.IsNull("牌号") =False AndAlso e.DataRow.IsNull("规格型号") = False
            Dim filter As String = "货物名称=\'" & e.DataRow("货物名称") & "\' And 牌号 = \'"&  e.DataRow("牌号") & "\' and 规格型号 = \'" & e.DataRow("规格型号") & "\' and [_Identify] <> " & e.DataRow("_Identify")
            If e.DataTable.Find(filter) IsNot Nothing Then
                e.DataRow(e.DataCol.name) = e.oldvalue
                MessageBox.Show("此货物名称已经存在!")
                e.Cancel = True
            End If
        End If
End Select