找回密码
 立即注册

QQ登录

只需一步,快速开始

MatrixTian 讲师达人认证 悬赏达人认证

高级会员

141

主题

211

帖子

1378

积分

高级会员

积分
1378

微信认证勋章讲师达人元老葡萄悬赏达人

MatrixTian 讲师达人认证 悬赏达人认证
高级会员   /  发表于:2019-11-19 13:51  /   查看:2664  /  回复:0
本帖最后由 James.Lv 于 2023-1-5 18:48 编辑

如图,在报表中经常会有按照分组和全局进行数据占比等计算的场景。
image.png930602111.png

本教程使用Wyn Enterprise内置Sum、Sum(with scope)等统计函数和ReportItems函数,快速实现类似计算场景。

1.以示例数据为例,首先新建常规矩表,分组统计各地区的各月份的销售量,并添加分组汇总行。
image.png796036071.png

2.新增列,计算组内占比;

分组占比列表达式:=Sum(Fields!购买数量.Value)/Sum(Fields!购买数量.Value,"矩表1_销售大区1")
含义:用矩表当前行的值除以分组的合计值,第二个sum函数是包含统计区域参数的,统计区域为分组:矩表1_销售大区1

如何查看分组:选中表格中销售大区单元格,在属性窗口查看分组,获取分组名称
image.png932414855.png

修改分组占比例数值的数据格式为百分比;
image.png686093139.png

分组占比效果:
image.png77977904.png

3.计算全局占比;
新增两列,一列用于计算全局占比,一列作为辅助列计算总销售量

   a.新建文本框,在文本框中绑定数据集销量字段的sum值,第二个参数为数据集名称:=Sum(Fields!购买数量.Value,"销售明细_报表"); image.png128613890.png

   b.将文本框拖到辅助列的明细行中;
image.png549230956.png
  预览效果
   image.png319918822.png
   c.在元素管理中获取文本框的属性,为后面获取文本框的值做准备:该文本框是:文本框16;
   image.png817124328.png
   d.使用ReportItems!文本框16.Value 可以获取到总计值。
   e.在全局占比列中添加表达式:=Sum(Fields!购买数量.Value)/ReportItems!文本框16.Value,修改数值格式为百分比。
    含义:用矩表中每个明细行的销量除以总销售量。
   f.隐藏辅助列的显示:选中汇总列所有单元格,在属性中打开隐藏;
    image.png159460753.png
   g.预览报表,即可看到最终效果。
    image.png400585936.png



QQ图片20191119135513.png

0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部