Foxtable(狐表)用户栏目专家坐堂 → 统计表金额列数位太多


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

主题:统计表金额列数位太多

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


加好友 发短信
等级:九尾狐 帖子:2649 积分:19396 威望:0 精华:1 注册:2008/9/12 9:19:00
统计表金额列数位太多  发帖心情 Post By:2021/8/31 19:51:00 [只看该作者]

以下统计中,金额列以元位单位,数位太多,想以万元为单位,不要小数,如何处理?

 

Dim b As New CrossTableBuilder("统计表1",DataTables("订单"))
b.HGroups.AddDef("
客户") '添加客户列用于水平分组
b.VGroups.AddDef("
产品") '添加产品列用于垂直分组
b.Totals.AddDef("金额
") '添加数量列用于统计
b.Build '
生成统计表


 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


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

Dim b As New sqlCrossTableBuilder("统计表1","订单")
b.HGroups.AddDef("客户"'添加客户列用于水平分组
b.VGroups.AddDef("
产品"'添加产品列用于垂直分组
b.Totals.AddExp("金额","金额 / 10000"
b.Build '
生成统计表

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


加好友 发短信
等级:九尾狐 帖子:2649 积分:19396 威望:0 精华:1 注册:2008/9/12 9:19:00
  发帖心情 Post By:2021/8/31 21:17:00 [只看该作者]

红色部分有问题
Dim cmd As New SQLCommand
        cmd.C
        cmd.CommandText = "Selec t * From {销售订单} Where 月 >= '" & e.Form.Controls("起始月").Text & "' And 月 <= '" & e.Form.Controls("截止月").Text & "'"
       
        Dim f As New SQLCrossTableBuilder("销售订单统计", cmd.ExecuteReader())
        f.HGroups.AddDef("客户简称")
        'f.VGroups.AddDef("月", "订单金额_{0}")
        f.VGroups.AddDef("月", "{0}")
        f.Totals.AddDef("订单单号",AggregateEnum.Count,"订单数") 
        f.Totals.AddExp("金额合计", "订单金额 /10000")
        f.OrderByTotal = True
        f.HorizontalTotal = True '水平合计
        f.VerticalTotal = True '垂直合计
        f.Decimals = 0 '保留的小数
        f.Build()

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


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

Dim f As New CrossTableBuilder("销售订单统计", "Selec t *,订单金额 /10000 as 金额合计 From {销售订单} Where 月 >= '" & e.Form.Controls("起始月").Text & "' And 月 <= '" & e.Form.Controls("截止月").Text & "'",“数据源名称”)
        f.HGroups.AddDef("客户简称")
        'f.VGroups.AddDef("月", "订单金额_{0}")
        f.VGroups.AddDef("月", "{0}")
        f.Totals.AddDef("订单单号",AggregateEnum.Count,"订单数") 
        f.Totals.AddDef("金额合计")
        f.OrderByTotal = True
        f.HorizontalTotal = True '水平合计
        f.VerticalTotal = True '垂直合计
        f.Decimals = 0 '保留的小数
        f.Build()


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


加好友 发短信
等级:九尾狐 帖子:2649 积分:19396 威望:0 精华:1 注册:2008/9/12 9:19:00
  发帖心情 Post By:2021/8/31 21:40:00 [只看该作者]


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

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


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

dim s as string = "Select *,订单金额 /10000 as 金额合计 From {销售订单} Where 月 >= '" & e.Form.Controls("起始月").Text & "' And 月 <= '" & e.Form.Controls("截止月").Text & "'"

Dim f As New CrossTableBuilder("销售订单统计", s,“数据源名称”)

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


加好友 发短信
等级:九尾狐 帖子:2649 积分:19396 威望:0 精华:1 注册:2008/9/12 9:19:00
  发帖心情 Post By:2021/9/1 9:21:00 [只看该作者]

还是没搞定。能否在生成统计表后用代码单独设置一下?

 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


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

遍历所有行,金额列 / 10000咯

For Each dr As DataRow In dt.DataRows
    For Each dc As DataCol In dt.DataCols
        dr(dc.name) = dr(dc.name)  / 10000
    Next
Next

 回到顶部