以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  打开表等待时间较长  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=143004)

--  作者:季朝龙
--  发布时间:2019/11/11 16:41:00
--  打开表等待时间较长
为什么我在表事件datacolchanged上加入一下代码,打开表就要等待较长时间,有什么方法可以优化打开时间吗?

If e.DataCol.Name = "订单号" Then \'发生变化的是产品列.
    \'则累计订单表中同名产品总的销售量,然后赋值给变动行的数量列
    e.DataRow("在制数量") = DataTables("生产数据").sqlCompute("Count(临时码)","[订单号] = \'" & e.NewValue & "\'")
    e.DataRow("已完成数量") = DataTables("生产数据").sqlCompute("Count(包装)","[订单号] = \'" & e.NewValue & "\'")
    e.DataRow("不良数量") = DataTables("生产数据").sqlCompute("Count(产品状态)","[订单号] = \'" & e.NewValue & "\'")
    e.DataRow("开始日期") = DataTables("生产数据").sqlCompute("min(投入时间)","[订单号] = \'" & e.NewValue & "\'")
    If e.DataRow("未完成数量") = 0 Then
        e.DataRow("结单日期") = DataTables("生产数据").sqlCompute("max(包装时间)","[订单号] = \'" & e.NewValue & "\'")
    Else
        e.DataRow("结单日期") = Nothing
    End If
End If

--  作者:有点蓝
--  发布时间:2019/11/11 16:47:00
--  
打开表不会受这个代码影响的,应该是有重置列的操作。

这种到后台数据库查询数据的没有什么可优化的。或者减少这个表的数据加载量

--  作者:季朝龙
--  发布时间:2019/11/11 17:37:00
--  
哦哦,好的,谢谢
--  作者:atiwhl5
--  发布时间:2019/11/11 21:49:00
--  
我是新手不是很懂,但是我在帮助里看到这个,你看看是不是这个http://www.foxtable.com/webhelp/topics/2225.htm