以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  if问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=105952)

--  作者:jick0526
--  发布时间:2017/8/29 20:06:00
--  if问题
老师,请问下,如果表A的A列等于表B的A列,且表B的B列,C列不为空,那么表A的D列E列F列会等于表B的D列E列F列,否则为空,这代码要怎么写,谢谢!
--  作者:有点蓝
--  发布时间:2017/8/29 20:59:00
--  
表A,datacolchanged事件

if e.datacol.name = "A"
dim dr as datarow = datatables("表B").find("A=\'" & e.datarow("A") & "\'")
if dr isnot nothing then
if dr.isnull("B") = false and r.isnull("C") = false 
e.datarow("D") = dr("D") 
e.datarow("E") = dr("E")
e.datarow("F") = dr("F")
endif
endif
endif

--  作者:jick0526
--  发布时间:2017/8/31 5:17:00
--  
老师,上面的代码如果改成,表A的A列等于表B的A列,如果表B的B列等于“出售”那么表A的D列E列F列会等于表B的D列E列F列,如果表B的B列不等于“出售”,
那么表A的D列E列F列为空,代码要怎么改,老师麻烦帮我改下,谢谢!

--  作者:有点甜
--  发布时间:2017/8/31 8:50:00
--  
If e.DataCol.name = "A"
    Dim dr As DataRow = DataTables("表B").find("A=\'" & e.DataRow("A") & "\'")
    If dr IsNot Nothing Then
        If dr("B") = "出售" Then
            e.DataRow("D") = dr("D")
            e.DataRow("E") = dr("E")
            e.DataRow("F") = dr("F")
        Else
            e.DataRow("D") = Nothing
            e.DataRow("E") = Nothing
            e.DataRow("F") = Nothing
        End If
    End If
End If