以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]总表日期随明细表最后日期而变动  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=129771)

--  作者:ZHX88863808
--  发布时间:2019/1/5 19:47:00
--  [求助]总表日期随明细表最后日期而变动

我有一个总表和一个明细表,总表有代码列、商品名列和变动日期列,明细表中有代码列、商品名列、日期列和一个审核逻辑列,现在想达到一个目的:明细表中审核逻辑打勾后,根据相同代码和商品名,总表中的变动日期随明细表中的最后日期而变动,请前辈老师帮忙写个代码,先谢了!


--  作者:ZHX88863808
--  发布时间:2019/1/5 20:02:00
--  
有没有在线的前辈老师请帮忙一下,谢谢!!!
--  作者:有点甜
--  发布时间:2019/1/6 23:32:00
--  
总表DataColChanged

Select Case e.DataCol.Name
    Case "变动日期"
        Dim dr As DataRow = DataTables("明细表").Find("[代码] = \'" & e.DataRow("代码") & "\' and 逻辑列 = true", "日期 desc")
        If dr IsNot Nothing Then
            e.datarow("变动日期") = dr("日期")
        Else
            e.datarow("变动日期") = Nothing
        End If
End Select
 
明细表DataColChanged

Select Case e.DataCol.Name
    Case "逻辑列","日期"
        DataTables("总表").datacols("变动日期").RaiseDataColChanged("[代码] = \'" & e.DataRow("代码") & "\'")
End Select

--  作者:ZHX88863808
--  发布时间:2019/1/7 9:37:00
--  
谢谢老师!但这里有个小问题请老师再帮忙修改一下,即如果总表变动日期,初期日期手工填入时,不能填入,希望能帮忙修改一下,谢谢!
--  作者:有点甜
--  发布时间:2019/1/7 10:44:00
--  

总表DataColChanged

Select Case e.DataCol.Name
    Case "代码"
        Dim dr As DataRow = DataTables("明细表").Find("[代码] = \'" & e.DataRow("代码") & "\' and 逻辑列 = true", "日期 desc")
        If dr IsNot Nothing Then
            e.datarow("变动日期") = dr("日期")
        Else
            e.datarow("变动日期") = Nothing
        End If
End Select
 
明细表DataColChanged
Select Case e.DataCol.Name
    Case "逻辑列","日期"
        DataTables("总表").datacols("代码").RaiseDataColChanged("[代码] = \'" & e.DataRow("代码") & "\'")
End Select

--  作者:ZHX88863808
--  发布时间:2019/1/7 12:04:00
--  
谢谢老师