首页 > 其他分享 >FineReport动态隔间运算

FineReport动态隔间运算

时间:2023-12-30 10:56:19浏览次数:37  
标签:运算 预览 公式 隔间 FineReport 偏移量 a2

1、动态隔间运算入门说明

  • 首先提供一个公式,公式:“显示列[显示列的父列:偏移量]”。此时你不需要知道这个公式是什么意思,目前有个印象就行,通过下面的学习你就明白了。
  • 动态隔间运算类似于EXCEL表格中的公式运算,相当于你在某个单元格中输入“=…”这样的公式。定义不太好叙述,下面通过案例说明,更为直观。

2、入门小案例

首先,新建一个普通报表–>利用sql选择需要导入的数据集

select strftime('%m',订购日期) as 月份,应付金额 from 订单
where strftime('%Y',订购日期) = '2011'

效果如下:

 接着进行模板样式的设计,及绑定数据。

 效果预览

 ① 进行第一个动态隔间运算

-- 公式: 显示列[显示列的父列:偏移量]
=b2[a2:-1]
-- 注意:-1表示的是偏移量。
-- 当偏移量为正数,表示正着数,偏移量分别是1,2,3...
-- 当偏移量为正数,表示倒着数,偏移量分别是-1,-2,-3...    

在任意单元格,输入如下公式

 保存后,进行效果预览

 ② 进行第二个动态隔间运算

-- 公式: 显示列[显示列的父列:偏移量]
=b2[!0]

 保存后,进行效果预览

 此时将该单元格,设置为横向扩展

 同时设置数字保留位数,为两位小数

 再次保存后,进行效果预览

 ③ 进行第三个动态隔间运算:筛选去掉某些数字

-- 公式: 显示列[显示列的父列:偏移量]
=b2[!0]{a2!=3}

在任意单元格,输入如下公式,调整为横向扩展,设置小数保留为2位有效数字

 保存后,进行效果预览

 

3、“比较”、“占比”、“环比”的操作

select strftime('%m',订购日期) as 月份,应付金额 
from 订单
where strftime('%Y',订购日期) = '2011'

以上述SQL语句的结果为数据源,完成如下需求。

 

① 比较
  • 应付金额中的每一个值,与第一个值进行比较,做差运算。

首先,新建一个普通报表模板,然后导入数据。

 接着,设计报表样式,然后绑定数据源。将“应付金额”保留两位有效数字。

然后,将“应付金额”设置为汇总求和。

 再接着,添加“比较”列。因为是求下面的每一个值与第一个值的差值,因此需要写入公式(公式如图所示)。并将“比较”列设置为保留两位有效数字。 

 保存后,效果预览如下

② 占比
  • 占比,顾名思义就是计算某个单独的数据,在总量中占据的比例。

在上述操作的基础上,添加“占比”列。直接使用自带函数进行占比运算,比较简单,操作如下。

 然后调整“占比”列的格式,保存格式为“百分比”,并两位有效数字。

 保存后,效果预览如下

③ 环比
  • 环比是每月与上月的数据进行一个比率运算。

在上述操作的基础上,添加“环比”列。直接使用自带函数进行环比,比较简单,操作如下。

 然后调整“环比”列的格式,保存格式为“百分比”,并两位有效数字。

 保存后,效果预览如下

 

4、“逐层累计”与“跨层累计”的操作

select strftime('%Y',订购日期) as 年份, strftime('%m',订购日期) as 月份,应付金额 
from 订单
where 年份 in('2011','2010')

以上述SQL语句的结果为数据源,完成如下需求。

 

  • 逐层累计:逐层累计就是在分组报表中,每一组中分别将每层与上一层数据相加,得到这一层的累计结果,并按照年份隔断。
  • 跨层累计:跨层累计,不按照年份隔断,一直求累加和。

首先,新建一个普通报表模板,然后导入数据。

 接着,设计报表样式,然后绑定数据源。将“应付金额”保留两位有效数字。

 

然后,将“应付金额”设置为汇总求和。

 接着添加“逐层累计”列和“跨层累计”列。我们都是直接使用官方自带的函数,操作如图。先添加“逐层累计”列,效果如下:

 再添加“跨层累计”列,效果如下:

 接着,将“逐层累计”列和“跨层累计”列,分别保留两位小数位。

 保存后,效果预览

 

5、条件汇总

图中红色方框中,属于条件汇总。

 写入公式:=count(c2[!0]{a2=KaTeX parse error: Expected 'EOF', got '&' at position 4: a2 &̲&c2>2500}):c2扩展…a2 &&c2>2500},{}里面是筛选条件,a2=$a2表示在当前A3组内;c2>2500表示总额大于或等于2500。

count(c2[!0]{a2=$a2 &&c2>2500})

首先,我们在单元格中输入上述公式

 接着,设置该单元格的左父格是【年度】,因为我们是按照【年度】分组统计的。

 保存后,进行效果预览

 

标签:运算,预览,公式,隔间,FineReport,偏移量,a2
From: https://www.cnblogs.com/lgx5/p/17936133.html

相关文章

  • C# 范围运算符
    a.. 等效于 a..^0..b 等效于 0..b.. 等效于 0..^0范围运算符表达式说明..集合中的所有值。..end从开头到 end(不含)的值。start..从 start(含)到结尾的值。start..end从 start(含)到 end(不含)的值。^start..从 start(含)到倒计数结尾的值。..^e......
  • 数据类型转换&表达式&运算符总结
    总结数据类型转换概念:将数据从一种格式或结构转换为另一种格式或结构的过程。作用:节约内存空间将一些类型转换为项目所需要的类型类型转换分类自动隐式转换定义:将小的数据类型转换大的数据类型注意事项:在Java中,boolean类型与所有其他7种类型都不能......
  • 基于FPGA的图像差分运算及目标提取实现,包含testbench和MATLAB辅助验证程序
    1.算法运行效果图预览  2.算法运行软件版本matlab2022a 3.算法理论概述      基于FPGA(Field-ProgrammableGateArray)的图像差分运算及目标提取实现主要涉及图像处理、差分运算和目标提取等原理和数学公式。 一、图像处理原理       图像处理是......
  • 复习:位运算
    为了打篮球杯而捡起来之前学的oiTA?那是什么东西,能吃吗?/其实是感觉这行现状一般前景惨淡想着我还年轻趁早跑路比较好本篇大概是位运算专题,之后以位运算为主的题目基本都会放在这里吧主要以题目为主,大概不会出单独章节讲知识1.求a^b%p,ab均小于1e9直接一个个乘的话时间复杂......
  • Java 日期转换运算工具类
    ​  参考文档:Java日期转换运算工具类-CJavaPy1、Date常用方法java.util.Date 是Java中表示日期和时间的一个基础类。但随着时间的推移,许多其方法被标记为过时,并被推荐在Java8引入的 java.time 包中的新类替代。但是,Date仍然在很多旧的代码库中广泛使用,并在与某......
  • 在 Python 中,​​?:​​​ 符号并不是一个有效的运算符。这个符号在其他一些编程语言
    在Python中,?:符号并不是一个有效的运算符。这个符号在其他一些编程语言中,如JavaScript或C,被称为条件(三元)运算符。然而,在Python中,我们使用if-else表达式来达到相同的目的。例如:x=10y=20print("xisgreater")ifx>yelseprint("yisgreater")在上述代码中,如果......
  • 两个Excel表格核对 excel表格中# DIV/0 核对两个表格的差异,合并运算VS高级筛选
    两个Excel表格核对  excel表格中#DIV/0核对两个表格的差异,合并运算VS高级筛选1.两列顺序一样的数据核对方法1:加一个辅助列,=B2=C2结果为FALSE的就是不相同的方法2:两列数据,按CTRL+\然后直接标记颜色就把不一样的找出来2.两列顺序不一致的情况方法1:用VLOOKUP来查找匹......
  • 【位运算】二进制中1的个数 (lowbit运算)
    lowbit的概念我们知道,任何一个正整数都可以被表示成一个二进制数。如:(2)10=(10)2(4)10=(100)2那么定义一个函数f(x)=lowbit(x),输入一个十进制数,返回二进制中最低一位的1所表示的值,如lowbit(4)=4 先了解原码补码反码原码:是最简单的机器数表示法。用最高位表示符号位,‘1......
  • MSSQL执行查询报错“使用 UNION、INTERSECT 或 EXCEPT 运算符合并的所有查询必须在其
     MSSQL执行查询报错“使用 UNION、INTERSECT 或 EXCEPT 运算符合并的所有查询必须在其目标列表中有相同数目的表达式。”报错截图: 根本原因如提示,列不一致,列的个数和列名,顺序都需要一致。 ......
  • FineReport 11.0参数查询入门示例操作记录
    参数的主要作用是实现用户与数据的实时交互,即进行数据的过滤。我们可以在很多情况下使用参数,比如在单元格中引用参数来实现动态标题、根据参数值的不同显示不同值等等。如下图所示:links:https://help.fanruan.com/finereport/doc-view-166.html?source=0&from=base......