Foxtable(狐表)用户栏目专家坐堂 → 同步加载子表数据问题


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

主题:同步加载子表数据问题

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


加好友 发短信
等级:三尾狐 帖子:688 积分:4903 威望:0 精华:0 注册:2013/10/27 17:14:00
同步加载子表数据问题  发帖心情 Post By:2016/3/28 20:51:00 [只看该作者]

在表事件中的 afterload事件中按帮助写 加载明细表事件
e.DataTable.LoadChildren("订单_明细表") 

关联列为 GUID 全球唯一码

数据库为SQL2005

发现部分分页加载时的明细表数据是正常加载的,但部份页面,部份主表数据并无加载明细表数据(经查询,明细表是有对应数据的)


测试示例已上传,请大红袍老师测试一下


以下内容是专门发给
大红袍浏览


[此贴子已经被作者于2016/3/29 11:15:28编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/3/28 20:55:00 [只看该作者]

不加载,肯定是不对应,多一个字符少一个字符就是不对应啊。或者你试试

 

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

 


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


加好友 发短信
等级:三尾狐 帖子:688 积分:4903 威望:0 精华:0 注册:2013/10/27 17:14:00
  发帖心情 Post By:2016/3/28 21:14:00 [只看该作者]

这说法不成立

比如 主表的 GUID  是29F06F6D-3CCD-409E-86C0-B326CBF659A6  这个的数据行

我在另一个系统里全部加载数据,在明细表中GUID 用等于 过滤这个29F06F6D-3CCD-409E-86C0-B326CBF659A6数据是有值的呀


如果有字符多或少的情况 则 等于 筛选 就不应该有值 。 并且在两个表中都对GUID列进行等于筛选 都有值


在对此进行测试前 有时发现明细表没有数据觉得奇怪,今天就做了个测试 

在正式测试之前 已用SQL命令 清除了多余数据,即明细表有数据,主表一定有数据,主表有数据明细表一定有数据

[此贴子已经被作者于2016/3/28 21:18:12编辑过]

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


加好友 发短信
等级:三尾狐 帖子:688 积分:4903 威望:0 精华:0 注册:2013/10/27 17:14:00
  发帖心情 Post By:2016/3/28 21:27:00 [只看该作者]

测试结果 AFTERLOAD事件改成

Dim ids As String
For Each dr As DataRow In DataTables("订单_主表").DataRows
    ids = ids & "," & dr("GUID")
Next
ids= ids.Trim(",")
ids = ids.Replace(",","','")
ids = "('" & ids & "')"
msgbox(ids)
DataTables("订单_明细表").LoadFilter = "GUID In " & ids
DataTables("订单_明细表").Load()

发现效果 与 之前一样

('51EFD233-7560-4D1D-9F6D-03B718E95FC6','AD22FB39-427E-4047-B74D-B924CCD57A90','9DA5703B-BFBE-47E3-BBE8-1E2C192622DC','23D38957-4032-4CA3-A90E-4CA83E612AAF','7F5AA3A1-39E5-4033-A6AF-E8E27449D313','3F402FC6-80F6-4D5D-947E-F458569C643D','BA908C7C-7698-48B7-A636-7EAD711FF22F','697521A2-3BDA-4374-8B60-47B9C99864B4','E2D7E14E-12C1-4F45-9307-31A0F70DE96D','DC418290-DCFE-4571-A6CD-EC3FEF5FE71D','DEBDCCF8-CE0C-4A73-BC56-933D25564CBC','27C42F41-E5EF-44DC-81EB-40F793CB14AB','BE740C2D-3DB3-4EA5-872E-0C206E050B57','92A527CE-6BCE-4631-96E9-53F75D182A6E','FAFE8B34-9C98-4828-AF59-4AF9D86DACD2','32AB1DCE-B6E7-4079-BC74-A60DD5DB7CD7','4DFD8802-6119-45C0-830F-1AFFF5F5F522','3F259415-2EE3-4FD6-8EF4-366138BACD68','995F7C66-80AB-4894-BFFC-9CBF8B646470','29F06F6D-3CCD-409E-86C0-B326CBF659A6')

出问题的 GUID 号 在 msgbox(ids) 中是正常的,在两个表中均 有数据的
但是在 关联表就是没数据出来


比如 这个GUID29F06F6D-3CCD-409E-86C0-B326CBF659A6的值  明细表就不加载





经测试 订单_主表 的单击事件 中写代码
Dim sw As String = e.Table.Current("GUID")
DataTables("订单_明细表").LoadFilter = "GUID = '" & sw & "'"
DataTables("订单_明细表").Load()
则所有主表的行单击时均有 明细表数据加载


这给人一种 FT不可控的感觉 

官方常规的编程方法导致 执行效果达不到预期效果 要花费大量的时间调试,唉

[此贴子已经被作者于2016/3/28 21:34:59编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/3/28 21:50:00 [只看该作者]

不可能,肯定是你哪里做错导致的问题。你做一个例子肯定没有问题。

 

关联表没有出来:数据加载出来了没有?没有加载出来,是条件不对,还是在关联表就限制了加载?比如行数之类的。

 

上传实例。


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/3/28 21:51:00 [只看该作者]

加载的时候控制好加载页数和加载行数啊

 

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

 


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


加好友 发短信
等级:三尾狐 帖子:688 积分:4903 威望:0 精华:0 注册:2013/10/27 17:14:00
  发帖心情 Post By:2016/3/28 22:23:00 [只看该作者]

使用官方加载树的,每页30行



 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/3/28 22:35:00 [只看该作者]

 例子说明,不可能存在你说的问题。

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


加好友 发短信
等级:三尾狐 帖子:688 积分:4903 威望:0 精华:0 注册:2013/10/27 17:14:00
  发帖心情 Post By:2016/3/29 11:16:00 [只看该作者]

测试示例已上传,请大红袍老师测试一下

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/3/29 11:38:00 [只看该作者]

 

[此贴子已经被作者于2016/3/29 11:37:44编辑过]

 回到顶部
总数 15 1 2 下一页