以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  加载及执行效率问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=132057)

--  作者:weibu
--  发布时间:2019/3/12 22:42:00
--  加载及执行效率问题

Dim Filter As String
Filter = "盘点部门 = \'" & cq & "\'And 盘点单号 = \'" & txt & "\'"
DataTables("盘点单据").LoadFilter = Filter
DataTables("盘点单据").Load        ’老师执行此语句前,打开“盘点单据”表的加载数,并设置了每页加载行数,如果表数据量很大,这两个语句是否有冲突?

Dim fbs As List(Of String) = DataTables("盘点单据").GetValues("商品编码",Filter) \'找到本次盘点的所有商品
For Each fb As String In fbs 
Dim syms As List(of DataRow) = DataTables("溯源码").SQLSelect("当前所在部门 = \'" & cq & "\' And 是否可用 = 1 And 商品编码 = \'" & fb & "\'") \'找到溯源码中盘点商品的溯源码
      For Each sym As DataRow In syms
 fr = DataTables("盘点单据").Find("[溯源码] = \'" & sym("子溯源码") & "\'")  \'老师这个地方用find语句是否可以?  
但数据量大时,我发现满足条件的“溯源码”数据并没有完全执行下面代码,只执行了一部分数据;用sqlfind怕数据量大,执行的慢;
用的是SQLSERVER数据库,请教改如何修改?
 If fr IsNot Nothing Then
               fr("审核人") = dr("姓名")
        fr("审核日期") = Date.Now   \'如果存在审核盘点单据

[此贴子已经被作者于2019/3/12 22:44:28编辑过]

--  作者:有点甜
--  发布时间:2019/3/13 9:51:00
--  

 

加入output.show,弹出对应信息看看,看是否执行到了那些代码,如果没有执行,看看条件什么的是否正确。