做过报表的人,尤其是经常有报表需求的人,想必都会有这样一个困惑:

为什么同样是做报表,其他人的报表就能够得到领导的肯定,而自己的报表就会被老板丢掉一边?

这个问题其实很好回答,你想一想,如果你是老板,当你想要看一份销售量统计图的时候,摆在你面前的是这样一张报表,你还有仔细看下去的耐心吗?

没有!连看下去的欲望都没犹豫,更不要说用这样的报表为下半年的营销策划做分析决策了!

报表最根本的目的就是要传达数据信息,是要给人看的,好的报表绝对不是枯燥的表格堆叠,而应该是简洁、美观、准确、讲人话的,也就是说报表也讲究“颜值”,而让报表动起来则是提高报表颜值最省力的方法。

比如还是上面的场景,如果现在摆在你面前的报表是这样的动态报表,你心中有没有惊艳的感觉?是不是瞬间觉得高大上了?是不是数据信息一目了然?

其实,动态报表不只是看上去颜值高而已,更重要的是能够充分解放报表制作的重复劳动,让用户能够依赖这些动态数据主动地进行业务分析,大大提高工作效率和决策准确性!

比如在日常的报表制作过程中,如果想要根据字段查看不同值所对应的报表,普通方法就是针对每一个值都做一张不同的报表,不仅工作量巨大,而且交互性差,每看一个值就要调用一张报表,麻烦至极;这时候就可以利用动态报表的过滤功能,想要调用什么报表就设置什么条件,一张报表就可以解决问题,省去了不必要的时间。

这就是动态报表的魅力,他可以让报表自讲自话,让用户的被动接受数据变成主动控制数据,老板关心什么数据,报表上就会显示什么数据,大大减少了决策时间,提高老板的效率就是变鼓自己的腰包,会不会用这个小小的动态效果差别就是这么大!

那么什么样的报表才算是动态报表呢?

千万不要以为让图表动一动就算是动态报表了,动态报表的准确定义是指没有固定报表模板,需要根据实际业务动态生成模板的报表,其核心在于数据和图表类型可随条件的不同即时展现,即除了能展现一般的静态图表内容之外,还必须具有良好的交互性。

这么说可能有人就更懵了,简单来说其核心就一点:报表数据能随条件随时调用。比如老板想要查看某个月份的数据,只需要通过设置一个参数过滤条件,老板在控件中选择什么时间月份,报表就只会显示哪个月的数据,根本不需要任何图表,这就叫做动态报表。

而动态报表的目的是为了更便捷、更迅速地查询和阅读数据,在这个基础上动态报表需要包含很多逻辑动能,比如:

1、参数过滤:条件不同,看到的数据就不同,这是动态报表的基础功能。

2、参数联动:将两个或多个组件建立链接,实现数据之间的自动关联。比如点击员工名称,订单金额、回款额等就会自动关联为该员工的数据:

3、钻取:动态报表的常见功能,主要是为了实现无限层数据的扩展,展开维度更高的详细数据。比如动图下钻。

4、参数面板动态显示:由于某些需要,很多情况下需要满足当满足某个条件时,某些查询条件才显示。比如选择年报,后面的参数框就会自动显示为年份,选择月报,后面的参数框就会自动显示为月份。

5、动态数据列:若数据库中存在两张表,如何实现不同的人根据需要选择不同的表进行查看,从而提高查询效率呢?此时就可以通过设置动态数据列,在控件中输入“订单”或者“销量”,就会分别展示不同报表:

6、动态条件:如果你想对表中的数据进行过滤时,查询条件是不确定的,有时候想用 A 列进行过滤,有时候想用 B 列进行过滤,比如我想查询地区是华北的数据,此时要如何实现呢?这个时候就要用到动态条件了!

除此之外还有很多功能,比如动态显示报表标题、动态分组、动态sheet扩展等等,这里不一一展示了。

那么,怎么能够快速地做出动态报表呢?

第一步当然是要选择好用的工具了,很多人用Excel也能做出来动态报表的效果,但是步骤非常复杂和繁琐,需要学会透视表、切片器和很多逻辑函数才行,为了报表效果而牺牲时间成本是得不偿失的,而且最后做出来的效果也是差强人意,并没有很高的交互性。

那么有没有一种能够方便快捷地制造动态报表的工具呢?当然有!今天我要安利的这款神器,就完全可以轻轻松松实现5分钟一张动态报表,而且保证能让你的老板看傻眼,上面展示的动态效果全都是由FineReport做出来的哦!

好了,不卖关子了,这个神器就是FineReport,一款专业的企业级web报表工具,如果用三个词来形容他就是“简单、专业、灵活”。

话不多说,我们下面就用FineReport来实操一下,如何制作一张简单的参数过滤动态报表吧!

1、下载安装FineReport,导入数据

点击下载好FineReport(链接)最新免费版之后,进入报表制作界面,借助官网的帮助文档熟悉一下简单的操作和界面设置,包括数据连接、数据导入、数据查询等等。

熟悉之后选择数据库查询,就可以找到自己想要导入的数据,拖拽到单元格中,如下图所示:

2、定义参数

数据导入之后,我们就需要设置一个参数,通过参数实现不同值的查询,在FineReport中可以直接通过“模板-模板参数”选择,例如我设置参数名称为p1,默认值为“华北”,如下:

3、参数过滤设置

虽然设置完了参数,但是没有经过过滤的参数最终还是会展示出全部数据,因此这一步非常关键,需要对单元格进行参数过滤的设置,设置单元格地区对应参数地区:

4、控件设置

完成了参数过滤,但是还需要一个能够存放参数选择的控件,本报表中选择使用下拉控件,如下:

5、报表完成

做到这里,一张动态报表就基本上完成了,可以点击分页预览进行查看了:

由于篇幅原因,参数面板动态显示、动态列、动态显示报表标题、动态分组、动态sheet扩展等功能就不具体一一实操了,基本上都跟上面展示的一样简单易学。

总结

想用FineReport这样的神器做出高颜值的动态报表并不是难事,难的是如何充分利用好这些繁多的功能,针对业务找到关键指标和数据,让老板一眼就能看到报表的价值所在,才这是报表人应该追求的目标。

easyui 动态设置单元格控件_比Excel还简单,实现动态报表原来只需要十分钟!相关推荐

  1. easyui 动态设置单元格控件_动态显示最大最小值的折线图

    小伙伴们好啊,今天和大家分享一个图表有关的知识. 折线图想必大家已经司空见惯,今天就要在简单的折线上,做出不简单的效果. 用动态折线图,展示一周销售的变化,并且自动突出最大最小值. 1.准备数据源 以 ...

  2. easyui 动态设置单元格控件_插入控件-gt;引用变量-gt;实现动态图表纵横筛选

  3. QTableWidget单元格控件居中对齐

    QTableWidget单元格控件居中对齐 由于在表格中的一列需要插入按钮控件,但是运行时按钮是左上对齐的,所以为了美观看了样式方法,基本上是文本居中,背景图片居中类似的设置,对于我的按钮基本原封不动 ...

  4. jqgrid 动态设置单元格不可编辑

    单元格可编辑需要设置3个地方 1.tableGrid里面的参数 cellEdit:true(开启行编辑功能)  false(默认,不可编辑) 2.cellsubmit: 'clientArray' 设 ...

  5. Pyqt5的tableWidget的单元格控件居中

    Pyqt5的tableWidget的单元格控件居中 以在tableWidget添加checkBox为例. #实例化一个tableWidget1tableWidget1 = QtWidgets.QTab ...

  6. C#:GridControl之 bandedGridView中的单元格自动换行、动态设置单元格行高

    C#:GridControl之 bandedGridView中的单元格自动换行.动态设置单元格行高 1.自动换行 //自动换行//RepositoryItemMemoEdit:一个编辑器,允许显示和编 ...

  7. 设置单元格填充方式_单元格的选择及设置单元格格式

    数据输入完毕,接下来可以设置字体.对齐方式.添加边框和底纹等方式设置单元格格式,从而美化工作表.要对单元格进行设置,首先要选中单元格. 选择单元格 选择单元格是指在工作表中确定活动单元格以便在单元格中 ...

  8. 设置单元格填充方式_【WPS神技能】Excel表格中单元格内的双色填充效果有点意思!...

    在Excel表格中做数据报表时,如果有需要重点突出的单元格数据,简单的操作自然是选中相关单元格,在"开始"菜单栏中找到"填充颜色",选择自己想要的颜色即可,如下 ...

  9. html导出excel合并单元格,JS导出EXCEL,动态设置单元格格式,合并单元格(横向或纵向)等操作...

    参考链接: https://blog.csdn.net/weixin_33724046/article/details/89611397 https://www.cnblogs.com/lvsk/p/ ...

最新文章

  1. 浪潮刘军:为什么说计算力是AI时代“免费的午餐”?
  2. 欺诈网站都注重用户体验!你,还在等什么?!
  3. 下列有关python语言的说法正确的是-关于 Python 语言的注释,以下选项中描述正确的是( )...
  4. C++ static 用法
  5. 第02讲:夯实根基,Web 网页基础
  6. 机器学习结构化学习模型_生产化机器学习模型
  7. 青海行--(7月26日)翻越祁连山
  8. hdfoo站点开发笔记
  9. 【转】CT基本概念(必须掌握)!!!!!!!!!!!!!!
  10. 如何查看交换机某端口下接什么设备
  11. matlab fopen函数的用法,matlab中关于fread函数的用法
  12. WinEdt LaTex(一)—— hello world!
  13. 2022年考研计算机组成原理_6 总线
  14. 设计模式之观察者Observer
  15. APICloud连接夜神模拟器--博客园老牛大讲堂
  16. android 平方常规字体,android - Android将Roboto字体设置为粗体,斜体,常规,…(类似于自定义字体系列) - 堆栈内存溢出...
  17. 调戏木马病毒的正确姿势-基础篇
  18. 利用python计算n阶行列式的源代码
  19. ffmpeg 265转YUV命令 转码工具,各种格式间互转,计算PSNR
  20. oracle误删除表空间的数据文件

热门文章

  1. Service Broker实现发布-订阅(Publish-Subscribe)框架(3)
  2. 两大主流Web服务器之分析与对比
  3. 使用Linq判断DataTable数据是否重复
  4. C#完美任意设置webBrowser框架默认的IE内核版本
  5. 关于myBatis的问题There is no getter for property named 'USER_NAME' in 'class com.bky.model.实例类'...
  6. java中appletviewer是什么意思_Java开发网 - 请教,appletviewer的问题
  7. 配置Django实现数据库读写分离
  8. 可以改善mysql性能的InnoDB配置参数
  9. Laravel的Class Laravel\Passport\Passport not found
  10. JS转字符 判断数字等