以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助] 相同产品名,逻辑列不重复  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=151518)

--  作者:leoli
--  发布时间:2020/6/26 14:27:00
--  [求助] 相同产品名,逻辑列不重复
老师

表A中第一列是产品名,第二例是逻辑列。

产品名相同时,只允许逻辑列一条记录是true, 当选第二条记录并且相同产品名 进行逻辑列再勾选时,就会出现提示,已经有勾选过了的,是否需要把原来的逻辑勾选去除,勾选本条记录 ?

如果选是,原来的勾选就去除,以本条记录勾选。如是否的话忽略。

如何在表属性中生成 ?

谢谢。

--  作者:linyunu
--  发布时间:2020/6/26 17:35:00
--  

参考

http://www.foxtable.com/webhelp/topics/2395.htm


--  作者:leoli
--  发布时间:2020/6/26 22:06:00
--  
它的跟我的不一样
--  作者:linyunu
--  发布时间:2020/6/26 22:33:00
--  
表DataColchanging

If e.DataCol.Name = "逻辑列"
    If e.NewValue = True Then
        Dim drs As List(of DataRow)  = e.DataTable.Select("产品名 = \'" & e.DataRow("产品名") & "\'")
        For Each dr As DataRow In drs
            If dr("逻辑列") = True Then
                If MessageBox.Show("已经有勾选过了的,是否需要把原来的逻辑勾选去除,勾选本条记录 ?","提示",MessageBoxButtons.YesNo,MessageBoxIcon.Question) = DialogResult.Yes Then
                    dr("逻辑列") = False
                Else
                    e.Cancel = True
                End If
            End If
        Next
    End If
End If