以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]逻辑列  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=85396)

--  作者:江南小城
--  发布时间:2016/5/25 8:14:00
--  [求助]逻辑列
老师好,求:当表A编号列输入和表B编号相同数据后表B逻辑列进行自动勾选。
--  作者:Hyphen
--  发布时间:2016/5/25 8:44:00
--  
表A的DataColChanged事件

If e.DataCol.Name = "编号" Then
    Dim dr As DataRow = DataTables("表B").Find("编号=\'" & e.DataRow(e.DataCol.Name ) & "\'")
    If dr IsNot Nothing Then
        dr("逻辑列") = True
    End If
End If

--  作者:江南小城
--  发布时间:2016/5/25 9:41:00
--  
首先谢谢老师,上面的代码是我要的。
Tables("表A").Cols("编号").Combolist = DataTables("表B").GetComboListString("编号")
通过上面代码在表A的编号列进行动态选择表B的编号,同时希望表B的逻辑列被勾选后的数组过滤掉不在表A的列表项目中显示。

--  作者:大红袍
--  发布时间:2016/5/25 9:46:00
--  
Tables("表A").Cols("编号").Combolist = DataTables("表B").GetComboListString("编号", "逻辑列 = False")
--  作者:江南小城
--  发布时间:2016/5/25 10:01:00
--  
Tables("表A").Cols("编号").Combolist = DataTables("表B").GetComboListString("编号", "逻辑列 = False")

老师,我在表B中还有一个逻辑列希望勾选后能同时过滤掉编号列的数组。

--  作者:大红袍
--  发布时间:2016/5/25 10:02:00
--  
Tables("表A").Cols("编号").Combolist = DataTables("表B").GetComboListString("编号", "逻辑列 = False and 编号 = \'" & e.Row("编号") & "\'")
--  作者:江南小城
--  发布时间:2016/5/25 10:20:00
--  
以下是引用大红袍在2016/5/25 10:02:00的发言:
Tables("表A").Cols("编号").Combolist = DataTables("表B").GetComboListString("编号", "逻辑列 = False and 编号 = \'" & e.Row("编号") & "\'")
老师,上面代码报错


--  作者:大红袍
--  发布时间:2016/5/25 10:21:00
--  
写到prepareEdit事件
--  作者:江南小城
--  发布时间:2016/5/25 10:37:00
--  
老师,我是设置窗口中的关联表。
--  作者:大红袍
--  发布时间:2016/5/25 10:43:00
--  

 写到子表的PrepareEdit事件