以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  高速合并速度太慢  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=130057)

--  作者:lgj716330
--  发布时间:2019/1/11 20:09:00
--  高速合并速度太慢
表属性DataColChanged里有类似下面的代码,导致高速合并速度很慢,就300来行需要一个多小时才完成,高速合并是使用狐表自带的。有什么变法解决呢
Select Case e.DataCol.Name 
    Case "部门名称","科目名称"
    If e.DataRow.Isnull("一月同期")  Then
    e.DataRow("一月同期") = DataTables("辅助总账").Compute("Sum(借方金额)","[部门] = \'" & e.DataRow("部门名称") & "\' and [科目] = \'" & e.DataRow("科目名称") & "\' and 会计期间 = \'01\' and 科目编码 like \'660%\'")
    End If
End Select
Select Case e.DataCol.Name 
    Case "部门名称","科目名称"
    If e.DataRow.Isnull("二月同期")  Then
    e.DataRow("二月同期") = DataTables("辅助总账").Compute("Sum(借方金额)","[部门] = \'" & e.DataRow("部门名称") & "\' and [科目] = \'" & e.DataRow("科目名称") & "\' and 会计期间 = \'02\' and 科目编码 like \'660%\'")
    End If
End Select

--  作者:有点蓝
--  发布时间:2019/1/11 20:16:00
--  
屏蔽事件,然后用代码导,最后重置列

systemready = false
systemready = true
DataTables("表A").datacols("部门名称").RaiseDataColChanged