Foxtable(狐表)用户栏目专家坐堂 → 跨表自动取汇总数


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

主题:跨表自动取汇总数

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


加好友 发短信
等级:一尾狐 帖子:410 积分:3670 威望:0 精华:0 注册:2017/4/8 8:59:00
跨表自动取汇总数  发帖心情 Post By:2018/6/12 15:33:00 [只看该作者]

专家:

  A B C 二表,建A表为项目基本信息表:有“项目名称”,列名有:项目名称、采购金额、已付款、未付款

          B表是采购明细登记表:列名有:项目名称,材料供应商,采购金额

          C表是付款明细登记表:列名有:项目名称,材料供应商,付款金额,付款日期 

   现在要做的是跨表取数碰到难题,要解决问题是建立一个表,能反应各个项目内各材料供应商的采购金额、已付款金额二项的汇总数,当然未付款金额可以用公式不说了,要跨表取汇总数,不知道代码如何写?

  

 

     


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


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


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


加好友 发短信
等级:一尾狐 帖子:410 积分:3670 威望:0 精华:0 注册:2017/4/8 8:59:00
最后执行出错  发帖心情 Post By:2018/6/12 17:16:00 [只看该作者]

Dim bd1 As New GroupTableBuilder("统计表1",DataTables("成本fa piao录入"))
Dim dt1 As fxDataSource
bd1.Groups.AddDef("开piao方名称") '根据型号分组
'bd1.Totals.AddDef("数量","进货_数量") '对数量进行统计
bd1.Totals.AddDef("价税合计金额","结算金额") '对金额进行统计
dt1 = bd1.BuildDataSource()

Dim bd2 As New GroupTableBuilder("统计表2",DataTables("付款明细表"))
Dim dt2  As fxDataSource
bd2.Groups.AddDef("收款单位") '根据型号分组
bd2.Totals.AddDef("付款金额","已付款") '对金额进行统计
dt2 = bd2.BuildDataSource()

dt1.Combine("开piao方名称",dt2,"收款单位") '将销售统计数据组合到进货统计数据

Tables("统计1").DataSource = dt1 '将统计结果绑定到Table
With DataTables("统计1").DataCols  '用表达式列计算库存数据
    .Add("未付款金额",Gettype(Integer), "IsNull([结算金额],0) - ISNULL([已付款],0) ]")
    '.Add("未付款金额",Gettype(Double), "[库存_数量] /[进货_数量] * [进货_金额]")
End With

 

 

提示,不存在名为“统计1”table


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


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

Tables("统计1").DataSource = dt1 '将统计结果绑定到Table

 

改成

 

dt1.show("统计1")


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


加好友 发短信
等级:一尾狐 帖子:410 积分:3670 威望:0 精华:0 注册:2017/4/8 8:59:00
  发帖心情 Post By:2018/6/12 20:23:00 [只看该作者]

老师还是不成功,这样吧,我上传个项目实例好了,您帮我看看,这是我整个开发的难点,请帮我一下。

要求我写在附件中的EXCEL表中,想利用二张表,做一个按钮或者目录树节点菜单,按一下就能出现我要求的实时汇总表。

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

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


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


加好友 发短信
等级:一尾狐 帖子:410 积分:3670 威望:0 精华:0 注册:2017/4/8 8:59:00
  发帖心情 Post By:2018/6/12 20:40:00 [只看该作者]

老师还是不成功,这样吧,我上传个项目实例好了,您帮我看看,这是我整个开发的难点,请帮我一下。

要求我写在附件中的EXCEL表中,想利用二张表,做一个菜单按钮或者目录树节点菜单,点一下就能出现我要求的实时汇总表。


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


加好友 发短信
等级:一尾狐 帖子:410 积分:3670 威望:0 精华:0 注册:2017/4/8 8:59:00
还是不行  发帖心情 Post By:2018/6/12 20:44:00 [只看该作者]

老师还是不成功,这样吧,我上传个项目实例好了,您帮我看看,这是我整个开发的难点,请帮我一下。

要求我写在附件中的EXCEL表中,想利用二张表,做一个按钮或者目录树节点菜单,按一下就能出现我要求的实时汇总表。


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


加好友 发短信
等级:超级版主 帖子:109720 积分:558310 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/6/12 21:01:00 [只看该作者]

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


[此贴子已经被作者于2018/6/12 21:01:26编辑过]

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


加好友 发短信
等级:一尾狐 帖子:410 积分:3670 威望:0 精华:0 注册:2017/4/8 8:59:00
还是不行,求  发帖心情 Post By:2018/6/13 8:41:00 [只看该作者]

老师,还是不行,我另做一份项目上传,想达到我EXCEL表内说明的要求,从菜单生成一个查询表格,请教正确代码,谢谢
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:项目祝.rar

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


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


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

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 arr() As String = {"项目分类","材料供应商"}
dt1.Combine(arr,dt2,arr)
dt1.show("统计表") '将统计结果绑定到Table
Dim t As Table = Tables("统计表")
With t.DataTable.DataCols  '用表达式列计算库存数据
    .Add("未付款金额",Gettype(Integer), "IsNull([购进金额],0) - ISNULL([付款金额],0)")
End With
With Tables("统计表")
    .MergeMode = MergeModeEnum.Standard
    .MergeCols.Clear()
    .MergeCols.Add("项目分类")
    .MergeCols.Add("材料供应商")
    .MergeSort = "项目分类,材料供应商"
    .AllowMerge = True
End With

Dim g As Subtotalgroup
t.SubtotalGroups.Clear()
t.GroupAboveData = False
t.TreeVisible = False
t.SpillNode = True

g = New Subtotalgroup
g.Aggregate = AggregateEnum.Sum
g.GroupOn = "*"
g.TotalOn = "购进金额,付款金额,未付款金额"
g.Caption = "总计"
t.SubtotalGroups.Add(g)

t.Subtotal()
MainTable = t


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