以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  重置相关列失败  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=91642)

--  作者:武汉老杨
--  发布时间:2016/10/15 12:52:00
--  重置相关列失败
代码在采购单明细  的 datacolchanged中

Select Case e.DataCol.Name \'强行触发父表中的采购编号
   Case "金额"
       DataTables("采购单明细").Save
        Dim prt As DataRow
        prt = DataTables("采购单").SQLFind("采购编号 = \'" & e.DataRow("采购编号") & "\'")
        If prt IsNot Nothing Then
            DataTables("采购单").DataCols("采购编号").RaiseDataColChanged(prt)
            prt.save
        End If
End Select

为什么变动  金额 列,父表不计算?

父表:
If e.DataCol.Name = "采购编号" Then \'统计采购单明细中的同一个采购编号的金额和
    e.DataRow("合计") = DataTables("采购单明细").SQLCompute("Sum(金额)","[采购编号] = \'" & e.NewValue & "\'")   
End If


求解!

--  作者:有点蓝
--  发布时间:2016/10/15 14:13:00
--  
因为用的是SQLFind,查出的是后台数据,只有前台数据才可以触发事件。

改为prt = DataTables("采购单").Find("采购编号 = \'" & e.DataRow("采购编号") & "\'")