以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  LoadChildren如何加条件?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=111522)

--  作者:a2029460
--  发布时间:2017/12/23 17:52:00
--  LoadChildren如何加条件?
数据是外部表,希望启动项目是减少数据加载以加快启动时间。
请问我把外部数据表设置成加载0行,然后启动项目后登录时,设置筛选条件,筛选登录的导购所维护的会员产生的近30天的销售流水数据。
这么设计是否合理?
登录代码:
If _UserRole = "导购" Then 
DataTables("pos_t_vip_info").LoadFilter = " vip_adviser= \'" & _UserName & "\'"   \' 加载登录导购所维护的会员
DataTables("pos_t_vip_info").Load
DataTables("pos_t_vip_info").LoadChildren("pos_t_saleflow") \' 加载会员的所有流水
上一步LoadChildren一加载就连2012年的数据都出来了,可我想只显示近30天的,请问这么设计啊?

--  作者:有点甜
--  发布时间:2017/12/24 15:37:00
--  

 再加上条件不就好了?

 

DataTables("pos_t_vip_info").LoadChildren("pos_t_saleflow")

DataTables("pos_t_saleflow").LoadFilter = DataTables("pos_t_saleflow").LoadFilter & " and 日期 >= #" & date.today.AddDays(-30) & "#"

DataTables("pos_t_saleflow").Load

 

或者直接生成加载条件,如 http://www.foxtable.com/webhelp/scr/2228.htm

 


--  作者:a2029460
--  发布时间:2018/1/7 9:50:00
--  
我的意思是,.loadchildren执行的时候就很费时间,因为数据量很大!
--  作者:有点甜
--  发布时间:2018/1/7 17:32:00
--  

不要用loadChildren,直接合成加载条件,如

 

http://www.foxtable.com/webhelp/scr/2228.htm

 

如代码

 

DataTables("pos_t_saleflow").LoadFilter = "主键 in (select 主键 from {pos_t_vip_info} where vip_adviser= \'" & _UserName & "\') and 日期 >= #" & date.today.AddDays(-30) & "#"