以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]多表引用  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=118961)

--  作者:q2520
--  发布时间:2018/5/15 9:38:00
--  [求助]多表引用
If e.DataCol.Name =  "持证情况" Then
    e.DataRow("持证情况") = DataTables("特殊工种").GetComboListString("工种", "姓名 = \'" & e.DataRow("姓名") & "\'").replace("|", vbcrlf)
End If

这是我现在用的代码   现在又加了一个表    持证情况那一列要从  “特殊工种”       “管理人员”    2个表里查找 要怎么改代码

--  作者:有点甜
--  发布时间:2018/5/15 9:50:00
--  

Dim ls1 As List(Of String) = DataTables("表A").GetValues("第一列")
Dim ls2 As List(Of String) = DataTables("表B").GetValues("第一列")
For Each s As String In ls2
    If ls1.Contains(s) = False Then
        ls1.add(s)
    End If
Next

msgbox(String.Join("|", ls1.ToArray))


--  作者:q2520
--  发布时间:2018/5/15 10:14:00
--  
甜老师  我不知道怎么加进去     
--  作者:有点甜
--  发布时间:2018/5/15 10:26:00
--  

If e.DataCol.Name = "姓名" Then
    Dim ls1 As List(Of String) = DataTables("表A").GetValues("第一列", "姓名 = \'" & e.DataRow("姓名") & "\'")
    Dim ls2 As List(Of String) = DataTables("表B").GetValues("第一列", "姓名 = \'" & e.DataRow("姓名") & "\'")
    For Each s As String In ls2
        If ls1.Contains(s) = False Then
            ls1.add(s)
        End If
    Next
    e.DataRow("持证情况") = String.Join(vbcrlf, ls1.ToArray)
End If


--  作者:q2520
--  发布时间:2018/5/15 10:55:00
--  
图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看
--  作者:q2520
--  发布时间:2018/7/9 11:24:00
--  
If e.DataCol.Name = "持证情况" Then
    Dim ls1 As List(Of String) = DataTables("特殊工种").GetValues("工种", "姓名 = \'" & e.DataRow("姓名") & "\'")
    Dim ls2 As List(Of String) = DataTables("管理人员").GetValues("工种", "姓名 = \'" & e.DataRow("姓名") & "\'")
    For Each s As String In ls2
        If ls1.Contains(s) = False Then
            ls1.add(s)
        End If
    Next
    e.DataRow("持证情况") = String.Join(vbcrlf, ls1.ToArray)
End If


现在又加了一个 应急救援培训 表  代码要怎么改

--  作者:有点甜
--  发布时间:2018/7/9 16:58:00
--  
If e.DataCol.Name = "持证情况" Then
    Dim ls1 As List(Of String) = DataTables("特殊工种").GetValues("工种", "姓名 = \'" & e.DataRow("姓名") & "\'")
    Dim ls2 As List(Of String) = DataTables("管理人员").GetValues("工种", "姓名 = \'" & e.DataRow("姓名") & "\'")
    Dim ls3 As List(Of String) = DataTables("管理人员").GetValues("工种", "姓名 = \'" & e.DataRow("姓名") & "\'")
    For Each s As String In ls2
        If ls1.Contains(s) = False Then
            ls1.add(s)
        End If
    Next
    For Each s As String In ls3
        If ls1.Contains(s) = False Then
            ls1.add(s)
        End If
    Next
    e.DataRow("持证情况") = String.Join(vbcrlf, ls1.ToArray)
End If