Foxtable(狐表)用户栏目专家坐堂 → 如何动态增加列并按要求统计?


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

主题:如何动态增加列并按要求统计?

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


加好友 发短信
等级:四尾狐 帖子:867 积分:6210 威望:0 精华:0 注册:2012/11/24 20:44:00
如何动态增加列并按要求统计?  发帖心情 Post By:2013/5/12 14:56:00 [显示全部帖子]

有三表,《回款表》、《进度应收》、《开piao》,三表都可通过“合同编号”列关联(但没关联),都有金额、日期列,随着项目进展,会不断增加日期值,如何动态生成下图的统计表:即按月统计相关表并汇总到一个临时表,用combin做了好久,一直没成功。

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

主要难在动态增加列,如本月是201305,下月就要统计到201306了,再下月就要统计到201307,通过窗口按钮统计到一个临时表中

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


加好友 发短信
等级:四尾狐 帖子:867 积分:6210 威望:0 精华:0 注册:2012/11/24 20:44:00
  发帖心情 Post By:2013/5/12 20:17:00 [显示全部帖子]

刚做了个简单的例子,总和能统计出来,就是不知按所有的月份动态增加,哪位大师帮忙看看。

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看
例子:
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:从明细统计.table



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


加好友 发短信
等级:四尾狐 帖子:867 积分:6210 威望:0 精华:0 注册:2012/11/24 20:44:00
  发帖心情 Post By:2013/5/12 21:48:00 [显示全部帖子]

用combin不能动态增加月份进行统计,代码如下:Dim bd1 As New GroupTableBuilder("统计表1",DataTables("收款"))
Dim dt1 As fxDataSource
bd1.Groups.AddDef("项目名称") '根据型号分组
bd1.Groups.AddDef("月份","收款_月份")  '根据型号分组
bd1.Totals.AddDef("金额","收款_金额") '对金额进行统计
dt1 = bd1.BuildDataSource()
Dim bd2 As New GroupTableBuilder("统计表2",DataTables("应收"))
Dim dt2  As fxDataSource
bd2.Groups.AddDef("项目名称") '根据型号分组
bd2.Groups.AddDef("月份","应收_月份") '根据型号分组
bd2.Totals.AddDef("金额","应收_金额") '对金额进行统计
dt2 = bd2.BuildDataSource()
Dim bd3 As New GroupTableBuilder("统计表3",DataTables("开piao"))
Dim dt3 As fxDataSource
bd3.Groups.AddDef("项目名称") '根据型号分组
bd3.Groups.AddDef("月份","开piao_月份") '根据型号分组
bd3.Totals.AddDef("金额","开piao_金额") '对金额进行统计
dt3 = bd3.BuildDataSource()
dt1.Combine("项目名称",dt2,"项目名称") '将销售统计数据组合到进货统计数据
dt1.Combine("项目名称",dt3,"项目名称") '将退货统计数据组合到进货统计数据
Tables("窗口2_table1").DataSource =dt1

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


加好友 发短信
等级:四尾狐 帖子:867 积分:6210 威望:0 精华:0 注册:2012/11/24 20:44:00
  发帖心情 Post By:2013/5/12 22:14:00 [显示全部帖子]

如何将月份移到垂直统计列呢?(即每个项目只有唯一一行)

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:四尾狐 帖子:867 积分:6210 威望:0 精华:0 注册:2012/11/24 20:44:00
  发帖心情 Post By:2013/5/12 22:34:00 [显示全部帖子]

基本成功,一个人慢慢研究的感觉真的很好,感谢UHUA老师,要会举一反三,把COMBINE代码中的GROUPTABLEBULID改为CROSS,就行了,只不过,显示不是很友善没有多层表头,还得高人指点指点:
效果如下:

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看
代码如下:

Dim bd1 As new  CrossTableBuilder("统计表1",DataTables("收款"))
Dim dt1 As fxDataSource
bd1.hGroups.AddDef("项目名称") '根据型号分组
bd1.vGroups.AddDef("月份","收款_月份")  '根据型号分组
bd1.Totals.AddDef("金额","收款_金额") '对金额进行统计
dt1 = bd1.BuildDataSource()
Dim bd2 As New crossTableBuilder("统计表2",DataTables("应收"))
Dim dt2  As fxDataSource
bd2.hGroups.AddDef("项目名称") '根据型号分组
bd2.vGroups.AddDef("月份","应收_月份") '根据型号分组
bd2.Totals.AddDef("金额","应收_金额") '对金额进行统计
dt2 = bd2.BuildDataSource()
Dim bd3 As New crossTableBuilder("统计表3",DataTables("开piao"))
Dim dt3 As fxDataSource
bd3.hGroups.AddDef("项目名称") '根据型号分组
bd3.vGroups.AddDef("月份","开piao_月份") '根据型号分组
bd3.Totals.AddDef("金额","开piao_金额") '对金额进行统计
dt3 = bd3.BuildDataSource()
dt1.Combine("项目名称",dt2,"项目名称") '将销售统计数据组合到进货统计数据
dt1.Combine("项目名称",dt3,"项目名称") '将退货统计数据组合到进货统计数据
dt1.show("统计表1")
[此贴子已经被作者于2013-5-12 22:35:15编辑过]

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


加好友 发短信
等级:四尾狐 帖子:867 积分:6210 威望:0 精华:0 注册:2012/11/24 20:44:00
回复:(don)Dim dt1,dt2,dt3 As fxDataSourceDim dt...  发帖心情 Post By:2013/5/13 7:11:00 [显示全部帖子]

谢谢指点,完美解决。

再请教一个问题:为什么我将这段代码中的窗口2改窗口3,就报错呢?(窗口3同样有按钮与table1)

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


加好友 发短信
等级:四尾狐 帖子:867 积分:6210 威望:0 精华:0 注册:2012/11/24 20:44:00
  发帖心情 Post By:2013/5/13 7:26:00 [显示全部帖子]

将此例移到其它项目,出现下面错误,估计哪儿做错了?

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:四尾狐 帖子:867 积分:6210 威望:0 精华:0 注册:2012/11/24 20:44:00
回复:(don)如你採用外部數據源,需要指出數據源,這應...  发帖心情 Post By:2013/5/13 12:26:00 [显示全部帖子]

谢谢大师指点,谨记您的教诲!

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


加好友 发短信
等级:四尾狐 帖子:867 积分:6210 威望:0 精华:0 注册:2012/11/24 20:44:00
回复:(don)如你採用外部數據源,需要指出數據源,這應...  发帖心情 Post By:2013/5/13 21:04:00 [显示全部帖子]

很不幸,加入了外部数据源名称后,还是提示“找不到对象”,如下图:图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:四尾狐 帖子:867 积分:6210 威望:0 精华:0 注册:2012/11/24 20:44:00
  发帖心情 Post By:2013/5/14 21:23:00 [显示全部帖子]

狐爸在不?为什么添加了外部数据源名还会出错?

 回到顶部
总数 11 上一页 1 2