Foxtable(狐表)用户栏目专家坐堂 → [求助]sql数据源关联表 先加载子表出错,怎样解决?


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

主题:[求助]sql数据源关联表 先加载子表出错,怎样解决?

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


加好友 发短信
等级:四尾狐 帖子:811 积分:10970 威望:0 精华:1 注册:2008/9/2 18:58:00
[求助]sql数据源关联表 先加载子表出错,怎样解决?  发帖心情 Post By:2017/9/22 7:46:00 [只看该作者]

sql数据源关联表 先加载子表出错,怎样解决?

Dim t As String = format(Date.now(),"yyyyMMddHHmmss")
Dim lst As List(Of String)
lst = Connections("数据源1").GetTableNames
For Each nm As String In lst
 '全部数据加载
    DataTables(nm).LoadFilter = ""
    DataTables(nm ).Load
   Next



请教:所有表中,有6个存在关联表(用表达式),
当先加载的是父表、后加载的是子表时,没问题;
当子表先加载、父表后加载时,就提示子表中某一表达式列无法加载;

怎么办呢?

狐爸曾经说过:

没办法,你要转变设计思路,先加载父表数据,先有父亲,才有儿子。
又说过:
我考虑了一下,你的需求有一定的道理,我加一个LoadParents方法,根据子表
同步加载父表吧。

LoadParents方法  在哪里?

[此贴子已经被作者于2017/9/22 7:51:46编辑过]

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


加好友 发短信
等级:四尾狐 帖子:811 积分:10970 威望:0 精华:1 注册:2008/9/2 18:58:00
  发帖心情 Post By:2017/9/22 7:50:00 [只看该作者]

http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=47326#editform
[此贴子已经被作者于2017/9/22 7:51:03编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/22 8:52:00 [只看该作者]


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


加好友 发短信
等级:四尾狐 帖子:811 积分:10970 威望:0 精华:1 注册:2008/9/2 18:58:00
  发帖心情 Post By:2017/9/22 14:22:00 [只看该作者]

以下是引用有点甜在2017/9/22 8:52:00的发言:

1、你问的是加载表?

 

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

 

2、http://www.foxtable.com/webhelp/scr/2894.htm

 


需要加载的表太多,只能采用遍历 表名 加入的方法,就出现了 子表 先加载 ,父表后加载的情况;您提供的是根据已列出表名加载的方式;


狐爸说的 LoadParents方法 在帮助中也找不到


Dim t As String = format(Date.now(),"yyyyMMddHHmmss")
Dim lst As List(Of String)
lst = Connections("数据源1").GetTableNames
For Each nm As String In lst
 '全部数据加载
    DataTables(nm).LoadFilter = ""
    DataTables(nm ).Load
   Next


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


加好友 发短信
等级:四尾狐 帖子:811 积分:10970 威望:0 精华:1 注册:2008/9/2 18:58:00
  发帖心情 Post By:2017/9/22 14:27:00 [只看该作者]

是不是这样:

只需在子表的AfterLoad事件中加上一行代码:

e.DataTable.LoadParents("父表")


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/22 14:35:00 [只看该作者]

1、如果最初没有加载表,请使用这种方法加载表

 

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

 

2、加载数据的话,加载先后顺序都没问题,不会导致报错。


 回到顶部