以文本方式查看主题

-  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=86891)

--  作者:wjl-se
--  发布时间:2016/6/28 13:57:00
--  还是关于LoadChildren(发现系统问题)

DataTables("产成品库").LoadFilter = "订单号 In (Select 订单号 F rom {订单总表} Where " & Filter & ") Or 追载 = True"
DataTables("产成品库").Load

上面加载方案代替LoadChildren+AppendLoad,效果很好;然而内置筛选树出问题了

 


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20160628134851.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2016/6/29 13:53:09编辑过]

--  作者:大红袍
--  发布时间:2016/6/28 14:41:00
--  

 用这种方法加载呢?如果这种也不行,就没办法了,自己做一个筛选数吧

 

http://www.foxtable.com/help/topics/2228.htm

 


--  作者:wjl-se
--  发布时间:2016/6/28 14:58:00
--  

那种方案,上万行的时候,加载不是一般的慢啊,直接卡死...

我还是用LoadChildren+AppendLoad吧,心塞ing...

 

老大不能改进一下?LoadFilter可以用sql,内置筛选树貌似也是从后台生成的,应该也可以SQL语句的呀。。。。


--  作者:大红袍
--  发布时间:2016/6/28 15:33:00
--  

 自己做个筛选树呗。

[此贴子已经被作者于2016/6/28 15:32:41编辑过]

--  作者:wjl-se
--  发布时间:2016/6/28 16:47:00
--  

子表LoadChildren以后,怎样获得Datatable的LoadFilter属性?

比如:

DataTables("订单总表").LoadChildren("产成品库")
DataTables("产成品库").AppendLoad("追载 = True", False)

此时同步子表,只会加载“追载 = True"的行,显然不是我想要的

我想获得lodachildren后的Loadfilter,重新合成,可以吗?


--  作者:大红袍
--  发布时间:2016/6/28 16:52:00
--  

 DataTables("订单总表").LoadChildren("产成品库")

 msgbox(DataTables("订单总表").LoadFilter)


--  作者:wjl-se
--  发布时间:2016/6/29 11:49:00
--  

1楼的加载方案,打开内置筛选树报“语法”错误,经过跟踪对比LoadChildren后,子表的LoadFilter,发现其中的表名是中括号的,于是下面这样:

DataTables("产成品库").LoadFilter = "订单号 In (Select 订单号 F rom {订单总表} Where " & Filter & ") Or 追载 = True" ’再也不用LoadChildren+AppendLoad了,速度还贼快(前提是订单号加索引)
DataTables("产成品库").Load ‘加载

DataTables("产成品库").LoadFilter = "订单号 In (Select 订单号 F rom [订单总表] Where " & Filter & ") Or 追载 = True" ’暗爽一下

 

加载后,内置筛选树正常打开,生成的节点和加载的数据范围一致。

 

这个问题难道是老爹疏忽了?

[此贴子已经被作者于2016/6/29 13:08:13编辑过]

--  作者:大红袍
--  发布时间:2016/6/29 14:49:00
--  

 我觉得{}在不是通用的,而[]反而会更好。

 

 你也可以用replace方法把{}替换成[]


--  作者:wjl-se
--  发布时间:2016/6/29 15:11:00
--  

replace("{", "[")

replace("}", "]")

要替换两次,有没有办法一次搞定?


--  作者:大红袍
--  发布时间:2016/6/29 15:13:00
--  
 不能,用正则也比较麻烦。