请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

高级会员

141

主题

211

帖子

1378

积分

高级会员

积分
1378

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

本帖最后由 James.Lv 于 2023-1-5 18:47 编辑

在报表中,经常会对分组类的各项数据做累计运算,分别获取分组内、全局累计值并计算其累计占比。
本教程使用Wyn Enterprise报表来实现累计和累计占比的运算。
主要用的到函数包括:Sum、RunningValue、ReportItems等。

实现步骤:
1.使用示例数据,用矩表组件,设计按照销售大区、省份分组的交叉报表;
image.png85379942.png
image.png888274536.png

2.计算分组累计值:
   a.新增列,列名设为组内累计值,分组明细行单元格编辑表达式:=RunningValue(Fields!购买数量.Value,Sum,矩表1_销售大区1)
   RunningValue函数用法:
   返回指定表达式的累进计算值。函数原型为:RunningValue(<Expression>, <Aggregate>, <Scope>)。其中,<Expression>为被计算的表达式,<Aggregate>为累进计算方法,比如:SUM表示合计,AVG表示平均。例如:=RunningValue(Fields!库存量.Value, SUM) 返回从数据集首行至当前行的库存量累计。
   Scope为计算范围,本文中指分组:矩表1_销售大区1
    image.png828635253.png

3.分组累计占比
    新增分组累计占比列,按以下步骤输入表达式:
   a.在表格上方新建文本框,输入表达式:=Sum(Fields!购买数量.Value,"销售明细_报表"),获取销量总计值。
   b.分组明细行和汇总行分别设置表达式:
      明细行表达式:=RunningValue(Fields!购买数量.Value,Sum,矩表1_销售大区1)/Sum(Fields!购买数量.Value,矩表1_销售大区1)
      汇总行表达式:=Sum(Fields!购买数量.Value)/ReportItems!文本框15.Value
   ReportItems获取文本框总计值方法:ReportItems!文本框14.Value
      image.png907882385.png
      image.png59699400.png
   效果图
    image.png668690795.png

4.全局累计
   新增全局累计列,
    image.png256563414.png

   在新增列中添加表达式:=RunningValue(Fields!购买数量.Value,Sum)
   此处累计为全局累计,不需要指定第三个作用域参数。
   实现效果:
   image.png58188780.png




image.png368742064.png

0 个回复

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