以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  在窗口中添加一个按钮,如何将表A中的数据写表B中  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=120887)

--  作者:zyxhx
--  发布时间:2018/6/25 19:04:00
--  在窗口中添加一个按钮,如何将表A中的数据写表B中
请教老师:我想设计一个窗口,将窗口中的table1控件绑定表A,在窗口中插入一个按钮,单击窗口中的按钮后,判断表A的身份证号码与表B中的身份证号码相同后,则将表A中身份证号码对应的电话号码行数据,写入表B中对应身份证号码相同的电话号码行,请问如何写代码?请老师指教,谢谢!
[此贴子已经被作者于2018/6/25 19:11:13编辑过]

--  作者:2900819580
--  发布时间:2018/6/25 19:38:00
--  

dim r as row = tables("表b").Current

Dim fr As DataRow = DataTables("表A").SQLFind("身份证号码 = \'" & r("身份证号码") & “‘”)

if fr isnot nothing then r("电话号码") = fr("电话号码")


--  作者:有点蓝
--  发布时间:2018/6/25 20:39:00
--  
或者

Dim r As Row = Tables("表A").Current
If r IsNot Nothing hen
    Dim fr As DataRow = DataTables("表B").Find("身份证号码 = \'" & r("身份证号码") & "\'")
    If fr IsNot Nothing Then
        fr("电话号码") = r("电话号码")
    End If
End If

--  作者:zyxhx
--  发布时间:2018/6/25 22:37:00
--  
谢谢老师,根据您的提示,我这样修改实现了我想要的功能,您看看有没有问题,谢谢老师指点!

Dim r As Row = Tables("表A").Current
If r IsNot Nothing hen
    Dim fr As DataRow = DataTables("表B").Find("身份证号码 = \'" & r("身份证号码") & "\'")
    If r("身份证号码") = fr("身份证号码") Then
        fr("电话号码") = r("电话号码")
    End If
End If

--  作者:zyxhx
--  发布时间:2018/6/25 22:37:00
--  
谢谢老师,根据您的提示,我这样修改实现了我想要的功能,您看看有没有问题,谢谢老师指点!

Dim r As Row = Tables("表A").Current
If r IsNot Nothing hen
    Dim fr As DataRow = DataTables("表B").Find("身份证号码 = \'" & r("身份证号码") & "\'")
    If r("身份证号码") = fr("身份证号码") Then
        fr("电话号码") = r("电话号码")
    End If
End If

--  作者:有点蓝
--  发布时间:2018/6/25 22:38:00
--  
测试没有问题就没有问题
--  作者:zyxhx
--  发布时间:2018/6/25 22:48:00
--  
只是不知道为什么要单击按钮3次才能写入更新数据?
--  作者:zyxhx
--  发布时间:2018/6/25 23:04:00
--  这样写好象没有问题了
我这样写好象没有问题了:

Dim r As Row = Tables("表A").Current
Dim fr As DataRow = DataTables("表B").Find("身份证号码 = \'" & r("身份证号码") & "\'")
If r IsNot Nothing Then
       fr("联系电话") = r("联系电话")
End If

感谢老师指点!!!

--  作者:有点蓝
--  发布时间:2018/6/25 23:18:00
--  
不够严谨,照抄3楼的代码
--  作者:zyxhx
--  发布时间:2018/6/25 23:22:00
--  
好象还是有问题:
Dim r As Row = Tables("表A").Current
Dim fr As DataRow = DataTables("表B").Find("身份证号码 = \'" & r("身份证号码") & "\'")
If r IsNot Nothing Then
       fr("联系电话") = r("联系电话")
End If
以上代码必须用鼠标定位在“表A”当前行才能更新“表B”对应行,要实现将表A的电话号码全部更新到表B的身份证对应电话号码,应该如何实现?