Foxtable(狐表)用户栏目专家坐堂 → 分组统计能算平均单价吗?


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

主题:分组统计能算平均单价吗?

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


加好友 发短信
等级:一尾狐 帖子:471 积分:4014 威望:0 精华:0 注册:2018/5/13 15:18:00
分组统计能算平均单价吗?  发帖心情 Post By:2021/4/10 21:51:00 [只看该作者]

想得到这张一张统计表,采用分组统计,出入库数量和出入库金额,应该行。但上月结存数量,结存金额,平均单价怎样才能算出来呢?分组统计是生的是临时表。是用查询表来做吗?

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

[此贴子已经被作者于2021/4/11 14:45:18编辑过]

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


加好友 发短信
等级:超级版主 帖子:106028 积分:539233 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/4/11 20:20:00 [只看该作者]

在分组统计的基础上添加临时列,然后遍历所有行手工填充上月结存数量,结存金额,平均单价

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


加好友 发短信
等级:一尾狐 帖子:471 积分:4014 威望:0 精华:0 注册:2018/5/13 15:18:00
  发帖心情 Post By:2021/4/11 21:01:00 [只看该作者]

蓝版,能给个帮助的链接吗?实现上述功能,学哪些地方。

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


加好友 发短信
等级:超级版主 帖子:106028 积分:539233 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/4/11 21:23:00 [只看该作者]


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


加好友 发短信
等级:一尾狐 帖子:471 积分:4014 威望:0 精华:0 注册:2018/5/13 15:18:00
  发帖心情 Post By:2021/4/16 17:40:00 [只看该作者]

蓝版,增加临时列,只能用表达式吗?不能用代码统计吗?

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


加好友 发短信
等级:一尾狐 帖子:471 积分:4014 威望:0 精华:0 注册:2018/5/13 15:18:00
  发帖心情 Post By:2021/4/16 17:47:00 [只看该作者]

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

蓝版,你能帮我写一段代码吗?我把源文件上传了。要从两张表里统计,我觉得蓝版的方法不能实现
分组统计生成的是临时表,不是数据表。并且分组统计,只能是从一张表里统计,我现在要从几张表里统计。我觉得只有查询表能解决。用增加临时列的办法,只能用表达式,这儿用表达式不行吧
[此贴子已经被作者于2021/4/16 21:06:23编辑过]

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


加好友 发短信
等级:超级版主 帖子:106028 积分:539233 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/4/17 13:41:00 [只看该作者]


Dim g As New GroupTableBuilder("统计表1", DataTables("入库明细"))
g.Groups.AddDef("入库日期", DateGroupEnum.Year, "年")
g.Groups.AddDef("入库日期", "月")
g.Groups.AddDef("商品名称")
g.Totals.AddDef("入库数量")
g.Totals.AddDef("入库金额")
g.Totals.AddDef("入库单价",AggregateEnum.Average )
g.Filter = "商品名称 is not null"
Dim dt As DataTable = g.Build(True)


DataTables("统计表").DeleteFor("")
Dim dr As DataRow
For Each r As DataRow In dt.DataRows
    dr = DataTables("统计表").AddNew
    dr("年") = r("年")
    dr("月") = r("月")
    dr("商品名称") = r("商品名称")
    dr("本月入库数据") = r("入库数量")
    dr("本月入库金额") = r("入库金额")
    dr("本月入库平均单价") = r("入库单价")
Next
Tables("统计表").Sort = "年,月"

For Each r As Row In Tables("统计表").Rows
    Dim d As Date = new Date(r("年"),r("月"),1)
    dr = DataTables("统计表").Find("商品名称 = '" & r("商品名称") & "' And 年 <=" & r("年") & " and 月 <" & r("月") , "年 desc,月 desc")
    If dr IsNot Nothing Then
        r("上月结存数量") = dr("本月入库数据")
        r("上月结存金额") = dr("本月入库金额")
    End If
Next
MainTable = Tables("统计表")

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


加好友 发短信
等级:一尾狐 帖子:471 积分:4014 威望:0 精华:0 注册:2018/5/13 15:18:00
  发帖心情 Post By:2021/4/17 16:29:00 [只看该作者]

蓝版:
1、Dim d As Date = new Date(r("年"),r("月"),1)
这句代码有什么作用,只看到在这儿设了一个变量,后面没有看到用这个变量。
2、我单独可以统计入库、出库的数据,现在蓝版把上月结存,本月入库写出来,我不知怎样把本月库存在你的代码里加去,加进去就报错。
请蓝版再把出库数量、出库金额的代码写一下。
[此贴子已经被作者于2021/4/17 16:32:30编辑过]

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


加好友 发短信
等级:超级版主 帖子:106028 积分:539233 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/4/17 16:42:00 [只看该作者]

1、没什么用,去掉即可
2、把上面的分组统计改为这里的统计即可:http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=162931

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


加好友 发短信
等级:一尾狐 帖子:471 积分:4014 威望:0 精华:0 注册:2018/5/13 15:18:00
  发帖心情 Post By:2021/4/17 16:58:00 [只看该作者]

蓝版,我也是这样想的,实际上还有些困难,请你贴一份完整的代码


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