Foxtable(狐表)用户栏目专家坐堂 → 同步加载


  共有2763人关注过本帖树形打印复制链接

主题:同步加载

帅哥哟,离线,有人找我吗?
狐狸爸爸
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2016/10/3 19:35:00 [显示全部帖子]

我测试没有问题

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2016/10/4 6:49:00 [显示全部帖子]

这个没办法,要显示订单表,必须加载同步加载对应的产品。

代码不要写在Afterload事件,分别做两个按钮:

按加载产品:

DataTables("产品表").LoadFilter = ""
DataTables("产品表").load()
DataTable(产品表).LoadChildren("订单明细")

按订单加载:
DataTables("订单").LoadFilter = ""
DataTables("订单").load()
DataTables("订单").LoadChildren("订单明细")
DataTables("订单明细").LoadChildren("产品表","产品ID","产品ID")



 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2016/10/4 9:41:00 [显示全部帖子]

如果全部写在AfterLoad事件会有死循环。

加载订单→订单的AfterLoad加载订单明细→订单明细的AfterLoad加载产品→产品的AfterLoad加载订单明细→订单明细的AfterLoad加载产品→产品的AfterLoad加载订单明细.....


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2016/10/4 10:34:00 [显示全部帖子]

如果要写在AfterLoad事件中。
要么根据产品加载订单明细。
要么根据订单加载订单明细,再根据订单明细加载产品。

只能二选择一。

我给你的建议
1、产品表的行不会多,所以默认全部加载即可。
2、订单和订单明细默认不加载
3、订房单表的Afterload事件:
e.DataTable.LoadChildren("订单明细")

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2016/10/5 6:54:00 [显示全部帖子]

5000行不多

或者只做一个方向的加载:

1、订单、订单明细产品默认全部不加载
2、订房单表的Afterload事件:
e.DataTable.LoadChildren("订单明细")
3、订单明细表的AfterLoad事件:
e.DataTable.LoadChildren("产品", "产品ID", "产品ID")

通过事件只能做一个方向的加载
[此贴子已经被作者于2016/10/5 6:56:34编辑过]

 回到顶部