以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [讨论]关联两个字段的代码 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=107207) |
-- 作者:积水成渊 -- 发布时间:2017/9/23 12:37:00 -- [讨论]关联两个字段的代码 这段代码是HR_人事类别对应表与HR_人事类别定义表的:类别组列与组编码列进行了关联,现在我需要HR_人事类别定义表的:类别组列与类别编码列 跟HR_人事类别对应表:组编码列与类别编码列进行关联,代码该如何修改: Dim dt As DataTable = DataTables("HR_人事类别对应") Dim ParentCol As DataCol Dim ChildCol As DataCol ParentCol = DataTables("HR_人事类别定义").DataCols("类别组") ChildCol = DataTables("HR_人事类别对应").DataCols("组编码") Win.FoxLib.Table.CreateRelation(ParentCol,ChildCol) If DataTables("HR_人事类别对应").DataCols.Contains("类别编码名称") = False Then dt.DataCols.Add("类别编码名称", Gettype(String),"Parent(HR_人事类别定义_HR_人事类别对应).类别名称") End If
[此贴子已经被作者于2017/9/23 12:37:34编辑过]
|
-- 作者:积水成渊 -- 发布时间:2017/9/23 13:31:00 -- 顶下 |
-- 作者:积水成渊 -- 发布时间:2017/9/23 13:37:00 -- ParentCol和ChildCol也可以是数组,这样可以通过多列创建关联,例如产品表和订单表,需要通过品名和型号两列建立关联: Dim DataCols1(1) As DataCol |
-- 作者:积水成渊 -- 发布时间:2017/9/23 13:38:00 -- 找到案例了 |
-- 作者:积水成渊 -- 发布时间:2017/9/23 14:18:00 -- 能够实现要求的代码如下: Dim DataCols2(1) As DataCol Dim DataCols3(1) As DataCol DataCols2(0) = DataTables("HR_人事类别定义").DataCols("类别组") DataCols2(1) = DataTables("HR_人事类别定义").DataCols("类别编码") DataCols3(0) = DataTables("HR_人事类别对应").DataCols("组编码") DataCols3(1) = DataTables("HR_人事类别对应").DataCols("类别编码") Relations.Add("po", DataCols2, DataCols3) If DataTables("HR_人事类别对应").DataCols.Contains("类别编码名称") = False Then dt.DataCols.Add("类别编码名称", Gettype(String),"Parent(po).类别名称") End If |
-- 作者:有点蓝 -- 发布时间:2017/9/23 14:50:00 -- 还有问题么? |
-- 作者:积水成渊 -- 发布时间:2017/9/23 15:47:00 -- 没了,感谢,有问题我再发帖 |