以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]在多值字段单元格选择多值后明细表增行问题!  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=130332)

--  作者:bashanren
--  发布时间:2019/1/18 23:44:00
--  [求助]在多值字段单元格选择多值后明细表增行问题!

各位老师晚上辛苦!!

项目中的“资质证书”表的“证书专业”列为多值字段,且为多值字段设置了“证书专业”明细表。

目标:在多值字段中选中值后,在明细表“证书专业明细”表中根据前面选定的每一个值增一行,并将选定值分别填入新增行的“证书专业”列。

谢谢各位老师。


--  作者:有点蓝
--  发布时间:2019/1/19 8:53:00
--  
“资质证书”表datacolchanged

If e.DataCol.Name= "证书专业"
    If e.NewValue > "" Then
        For Each zs As String In e.NewValue.split(",")
            Dim dr As DataRow = DataTables("证书专业明细").Find("证书专业=\'" & zs & "\'")
            If dr Is Nothing then
                dr = DataTables("证书专业明细").AddNew
                dr("证书专业") = zs
            End If
        Next
    End If
End If

--  作者:bashanren
--  发布时间:2019/1/19 14:34:00
--  
谢谢“蓝”老师,但由于这段代码拒绝了重复内容的输入,所在,我略改了一下:目的是想同一个人的“证书专业”不再重复输入,可运行后提示“Long”转换问题,我查了列属性都是“字符”形的,不存在Long的问题,还请老师指导,谢谢!!
If e.DataCol.Name= "证书专业"
    If e.NewValue > "" Then
        For Each zs As String In e.NewValue.split(",")
dim r as datarow = e.datarow
dim xm as string = r("姓名")
            Dim dr As DataRow = DataTables("证书专业明细").Find("证书专业=\'" & zs & "\'" and "姓名=\'" & xm & "\'")
            If dr Is Nothing then
                dr = DataTables("证书专业明细").AddNew
                dr("证书专业") = zs
            End If
        Next
    End If
End If

--  作者:有点蓝
--  发布时间:2019/1/19 14:47:00
--  
这个帮助建议仔细看10遍:http://www.foxtable.com/webhelp/scr/1284.htm

Dim dr As DataRow = DataTables("证书专业明细").Find("证书专业=\'" & zs & "\' and 姓名=\'" & xm & "\'")