以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助] 如何不让Find自己的行 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=97904) |
-- 作者:2900819580 -- 发布时间:2017/3/20 21:02:00 -- [求助] 如何不让Find自己的行 Select Case e.DataCol.Name Case "规格","封装" If dr("规格") = Nothing And dr("封装") = Nothing Then dr("查找列")= "" Else dr("查找列")=dr("规格") & "|" & dr("封装") End If \' MessageBox.Show(dr("查找列")) If dr.IsNull("规格") = False AndAlso dr.IsNull("封装") = False Then Dim dr1 As DataRow = e.DataTable.Find("规格 =\'" & dr("规格") & "\' and 封装 =\'" & dr("封装") & "\'") If dr1 IsNot Nothing Then MessageBox.Show(dr("规格") & "|" & dr("封装") & ":已有相同的物料封装") dr.Delete End If End If
|
-- 作者:有点蓝 -- 发布时间:2017/3/20 21:13:00 -- 代码放到DataColChanging事件 Select Case e.DataCol.Name Case "规格","封装" Dim dr As DataRow = e.DataRow If dr.IsNull("规格") OrElse dr.IsNull("封装")Then dr("查找列")= "" Else Dim dr1 As DataRow = e.DataTable.Find("规格 =\'" & dr("规格") & "\' and 封装 =\'" & dr("封装") & "\'") If dr1 IsNot Nothing Then MessageBox.Show(dr("规格") & "|" & dr("封装") & ":已有相同的物料封装") e.Cancel = True Return End If dr("查找列")=dr("规格") & "|" & dr("封装") End If end select
|