Foxtable(狐表)用户栏目专家坐堂 → [求助]统计后台子表行数个数


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

主题:[求助]统计后台子表行数个数

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


加好友 发短信
等级:幼狐 帖子:154 积分:1653 威望:0 精华:0 注册:2015/7/1 15:27:00
[求助]统计后台子表行数个数  发帖心情 Post By:2016/7/11 10:41:00 [只看该作者]

我有个关联表,客户名称和生产计划,对应客户ID关联

 

现在窗口里面有个表 客户名称,我想打开的时候,让客户名称 表里的 有个计划数的列显示各个客户的计划数,但是我没有加载所有的数据,所以表达式列不太适用。

 

我现在是在窗口afteropen里面这样写的

For Each r As Row In Tables("客户名称").Rows
    r("计划数")=DataTables("生产计划").SQLCompute("count(*)", "[客户ID] = '" & r("客户ID") & "'")
Next

 

但是效率很低,打开这个窗口要好几秒,请教怎么修改比较合适,非常感谢


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


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

DataTables("生产计划").LoadFilter = "客户id in ('" & DataTables("客户名称").GetComboListString("客户id").replace("|", "','") & "'"
DataTables("生产计划").Load

For Each r As Row In Tables("客户名称").Rows
    r("计划数")=DataTables("生产计划").compute("count(客户id)")
Next

[此贴子已经被作者于2016/7/11 11:02:32编辑过]

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


加好友 发短信
等级:幼狐 帖子:154 积分:1653 威望:0 精华:0 注册:2015/7/1 15:27:00
  发帖心情 Post By:2016/7/11 11:01:00 [只看该作者]

编译错误,应为语句结束

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


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

DataTables("生产计划").LoadFilter = "客户id in ('" & DataTables("客户名称").GetComboListString("客户id").replace("|", "','") & "'"
DataTables("生产计划").Load

For Each r As Row In Tables("客户名称").Rows
    r("计划数")=DataTables("生产计划").compute("count(客户id)")
Next


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


加好友 发短信
等级:幼狐 帖子:154 积分:1653 威望:0 精华:0 注册:2015/7/1 15:27:00
  发帖心情 Post By:2016/7/11 11:09:00 [只看该作者]

最后应该是&"')"吧

 

这样的话,所有客户后面的计划数都是一样的,全是总计划数了


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


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

写错了。

 

DataTables("生产计划").LoadFilter = "客户id in ('" & DataTables("客户名称").GetComboListString("客户id").replace("|", "','") & "'"
DataTables("生产计划").Load

For Each r As Row In Tables("客户名称").Rows
    r("计划数")=DataTables("生产计划").compute("count(客户id)", "[客户ID] = '" & r("客户ID") & "'")
Next


 回到顶部