以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助] 启动时不加载数据,启动后按条件加载,如何实现?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=179550)

--  作者:13568406997
--  发布时间:2022/8/29 15:54:00
--  [求助] 启动时不加载数据,启动后按条件加载,如何实现?

图片点击可在新窗口打开查看

For Each dtb As DataTable In DataTables
    dtb.LoadFilter = "[_Identify] Is Null"
Next 

想使用上述代码修改所有表的初始加载条件,但没有成功

--  作者:13568406997
--  发布时间:2022/8/29 16:09:00
--  
图片点击可在新窗口打开查看
在这个事件里写了这段代码,但启动完成,还是加载了所有数据,200多个表,启动就用了10多分钟,太慢了


--  作者:有点蓝
--  发布时间:2022/8/29 16:11:00
--  
建议先把【动态加载】这一章的内容全部过一遍,包括里面提到的各种事件。


到下面事件处理
对于内部表,请参考事件:BeforeLoadInnerTable
对于外部表,请参考事件:
BeforeLoadOuterTable



--  作者:swagger
--  发布时间:2022/8/29 17:53:00
--  
用这个万能公式,

\'第一段,加载需要表和需要表数据,如果全部不加载,就用第二段的case else
Select Case e.DataTableName
Case "表1", ”表2" 
Case Else
e.cancel = True
End Select 


\'第二段,不加载不需要的表数据

Select Case e.DataTableName
Case “表1” \'需要加载的表
Case else  \'不需要加载的表
    e.SelectString = "Select * F rom {" & e.DataTableName & "} Where [_Identify] Is Null"
end select

如果全部不加载,就用这个
Select Case e.DataTableName
Case else  \'不需要加载的表
    e.SelectString = "Select * F rom {" & e.DataTableName & "} Where [_Identify] Is Null"
end select

第一段和第二段不能合并
[此贴子已经被作者于2022/8/29 18:04:43编辑过]