以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  请问各位大师,下面的代码如何写成自定义函数  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=135259)

--  作者:wky10652008
--  发布时间:2019/5/22 9:30:00
--  请问各位大师,下面的代码如何写成自定义函数
\'====================以下代码实现跨表数据查找与替换
newName =e.Form.Controls("Text姓名").Value   ‘newName、newsfz  为全局变量
newsfz =e.Form.Controls("Text身份证").Value
If newsfz <> oldsfz  Then   \'如果修改了身份证号码
    For Each dt As DataTable In DataTables
        If dt.name <> "Users" And dt.name <> "词典" And dt.name <> "身份证籍贯编码"  And dt.name <> "授权" And dt.name <> "职称统计表"  And dt.name <> "培训信息"  Then
            Dim drs As List(Of DataRow)
            drs = DataTables(dt.name).Select("[身份证号码] = \'" & oldsfz & "\'" )
            For Each dr As DataRow In drs
                dr("姓名") =newName
                dr("身份证号码") =newsfz
            Next
        End If
    Next
End If
\'======================================================

--  作者:有点甜
--  发布时间:2019/5/22 9:43:00
--  

改成

 

Dim frm = Forms("窗口1")
newName = frm.Controls("Text姓名").Value   \'newName?newsfz  为全局变量
newsfz = frm.Controls("Text身份证").Value
If newsfz <> oldsfz  Then   \'如果修改了身份证号码
    For Each dt As DataTable In DataTables
        If dt.name <> "Users" And dt.name <> "词典" And dt.name <> "身份证籍贯编码"  And dt.name <> "授权" And dt.name <> "职称统计表"  And dt.name <> "培训信息"  Then
            Dim drs As List(Of DataRow)
            drs = DataTables(dt.name).Select("[身份证号码] = \'" & oldsfz & "\'" )
            For Each dr As DataRow In drs
                dr("姓名") =newName
                dr("身份证号码") =newsfz
            Next
        End If
    Next
End If


--  作者:wky10652008
--  发布时间:2019/5/22 10:49:00
--  谢谢
谢谢有点甜老师