zoukankan      html  css  js  c++  java
  • 报表中如何实现分组内累计、全局累计、累计占比、全局累计占比

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

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



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

    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
          
          
       效果图
        

    4.全局累计
       新增全局累计列,
        

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

  • 相关阅读:
    oracle(八)块清除
    oracle(七)索引
    oracle(六) physical read and logical read
    oracle动态视图(一)stat
    oracle(五)tkprof 使用 transient kernal profile 侧面 轮廓
    dbms_stats.gather_table_stats详解
    oracle(四) 常用语句
    oracle(三) SQL语句
    [Swift]LeetCode269. 外星人词典 $ Alien Dictionary
    [Mac]如何让两个窗口各占半个屏幕
  • 原文地址:https://www.cnblogs.com/edoo/p/13919496.html
Copyright © 2011-2022 走看看