Foxtable(狐表)用户栏目专家坐堂 → 统计查询窗口如何计算子表中合计数到父行


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

主题:统计查询窗口如何计算子表中合计数到父行

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


加好友 发短信
等级:五尾狐 帖子:1088 积分:8247 威望:0 精华:4 注册:2012/3/31 18:08:00
统计查询窗口如何计算子表中合计数到父行  发帖心情 Post By:2015/4/1 11:00:00 [只看该作者]

有二个表,通过关联字段,做了关联,现在 在查询的时候想把子行的合计增加到父行中,查询窗口二个表是用的SQL查询默认加载为空,

我用SQLCOMPUTE可以将子行的合计数到父行,但速度太慢,请问有何方法可以提高一下查询速度呢?

请帮忙解决一下.谢谢.

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:desktop.rar



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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/4/1 11:04:00 [只看该作者]

有关联的话用表达式统计啊http://www.foxtable.com/help/topics/0100.htm

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


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

Tables(e.Form.Name & "_Table1").DataTable.LoadFilter= s
Tables(e.Form.Name & "_Table1").DataTable.load
Tables(e.Form.Name & "_Table1").DataTable.LoadChildren("zypj2")
Dim chr As Table
For Each r As Row In Tables(e.Form.Name & "_Table1").Rows
    r("金额")= DataTables("zypj2").Compute("sum(金额)","单据内码='" & r("单据内码") & "'")
Next


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


加好友 发短信
等级:五尾狐 帖子:1088 积分:8247 威望:0 精华:4 注册:2012/3/31 18:08:00
  发帖心情 Post By:2015/4/1 11:22:00 [只看该作者]

SQLQUERY表也可以默认用系统建立的关联吗?,在后台表中没有表达式金额这列

'Tables(e.Form.Name & "_Table1").DataTable.DataCols("金额").Expression = "Sum(Child.金额)"  这样出错.

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


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

 看3楼,思路是:加载出要计算的数据,然后用compute啊,不要循环用sqlcompute

 


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


加好友 发短信
等级:五尾狐 帖子:1088 积分:8247 威望:0 精华:4 注册:2012/3/31 18:08:00
  发帖心情 Post By:2015/4/1 11:40:00 [只看该作者]

恩.解决 了,,,,看来SQLCOMPUTE不能频繁用,不然会卡死.还是加载到系统中来比较好,如果查询的量比较大全部 加载进去会 不会太卡,,,能不能用一个临时表将父表加载进来,然后增加一个临时列,将子表中的合计数赋值 到这列,点击某一行再加载子表?

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


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

 你要统计每一行的子表的数据,你就必须把子表数据先加载出来,再统计,这样才快。

 

 既然子表已经要全部加载,那就一次性加载出来。


 回到顶部