以文本方式查看主题 - 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" 上面加载方案代替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("产成品库") 此时同步子表,只会加载“追载 = 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("产成品库").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 -- 不能,用正则也比较麻烦。 |