以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  求助狐狸爸爸(跨表更新学历)  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=81934)

--  作者:西瓜住持
--  发布时间:2016/3/9 8:58:00
--  
SQL,UPDATE
--  作者:大红袍
--  发布时间:2016/3/9 10:16:00
--  

参考 http://www.foxtable.com/help/topics/1453.htm

 


--  作者:大红袍
--  发布时间:2016/3/9 14:48:00
--  

查学历表啊

 

If e.DataCol.Name = "姓名" Then \'如果内容发生变动的是品名列
    If e.NewValue Is Nothing Then \'如果新值是空白,也就是品名列的内容为空
        e.DataRow("学历") = Nothing \'那么清空此行单价列的内容
    Else
        Dim dr As DataRow
        \'否则在产品表查找同名的产品行,将找到的行赋值给变量dr
        dr = DataTables("学历表").Find("[姓名] = \'" & e.NewValue & "\'", "取得证书日期 desc")
        If dr IsNot Nothing Then \'如果找到了同名的产品行,也就是dr不是Nothing
            e.DataRow("学历") = dr("学历")
        End If
    End If
End If

 

-----------------在学历表的datacolchanged事件,重新触发一次计算

 

 

If e.DataCol.Name = "学历" OrElse e.DataCol.Name = "取得证书日期" Then \'如果内容发生变动的是品名列

    DataTables("近况表").DataCols("姓名").RaiseDataColChanged("姓名 = \'" & e.datarow("姓名") & "\'")

End If

 


--  作者:大红袍
--  发布时间:2016/3/9 15:14:00
--  
看6楼,不会做,上传具体实例。