FineReport报表工具的简单使用:基于FineReport 6.5

第一步:简单制作一个Excel:

  1.首先这款报表工具是直接从数据库中取数据,所以我们首先要连接到数据库:

点击 --服务器 --定义数据库连接

我们可以在这里选择要连接的数据库,我这里连接的是本机的mysql数据库。填写完之后可以测试是否连通。

2.定义数据集 就是要我们描述用来填充Excel的数据集。

点击 报表数据集窗口下的 加号,然后我们可以在弹出的窗口左侧看到连接数据库中的表等信息,并且可以在右侧的窗口中书写SQL。这个SQL查询出来的结果就是填充到Excel中的数据。 在这里,用${abc}的形式来接收参数。

select id,red_packet_id,user_id ,grab_time,note from t_user_red_packetwhere user_id < 50  //判断是否传入了minID和maxID这两个参数。
and if(length('${minID}') > 0,id > '${minID}',1=1)
and if(length('${maxID}') > 0,id < '${maxID}',1=1)

参数窗口中,我们添加参数来预览执行出来的结果。

3. 模板设计 就是我们可以来编辑Excel的列名了。以及它所绑定的数据列。

像我们平时使用Excel一样,可以编辑列名等信息。
因为每一列都是我们从数据库中查询出来的,所以我们需要将其和数据库查询出来的字段进行绑定。
在列名下方的单元格右键单击–单元格元素–插入数据列
在数据集的下拉菜单中选择你要绑定的数据集,数据列中就会出现你之前写的SQL中查询出来的字段,选择与列名相匹配的字段。

在这里有一个数据设置的单选窗口,这里可以根据需求来选择,不过要记着这里,不然有时候预览的时候数据会堆在一起,就需要调这里。

最后将所有的列和字段绑定如下:

同时我们也可以对产生的数据进行合计,利用=SUM(D2)。这个 D2标志了你要进行合计的字段所在的单元格。

这个时候我们就可以进行简单的预览了,
单击 设计器预览:

同时我们可以在浏览器中进行预览,更加的方便,

一般来说地址为:

http://localhost:48075/WorkSpace1/ReportServer?reportlet=当前文件名.cpt

FineReport也支持在页面上进行选择条件来刷新数据:
大概来说就这样:

报表上方的下拉菜单、按钮等都可以在控件管理中找到:

我们可以直接将控件拖到单元格中,然后再单元格上右键—控件设置 控件名的位置就是我们之前在SQL中写的字段,我们可以在这个下拉菜单中选择数据,然后填充到SQL中。

这里,还需要在形态标签中,指定下拉菜单展示的数据集。我这里就简单的写了只查询出一个数值的SQL。所以在下拉菜单中就只会出现一个数值。

这里我们还需要定义一个 按钮 控件。我们可以指定按钮的名字和图标,并且指定它的类型为参数提交,就是将下拉菜单选中的参数提交到SQL中。

保存之后,预览 效果如下:

可以通过选择最大/小id来筛选Excel中的数据。

FineReport简单入门相关推荐

  1. 视频教程-finereport从入门到实战视频教程-大数据

    finereport从入门到实战视频教程 阿里云大学,腾讯云特骋讲师,曾任光华电子大数据项目总监,精通数据采集,处理,可视化全流程技术,具有极强的数据思维及数据变现能力. 孟光焱 ¥128.00 立即 ...

  2. BizTalk 2006 简单入门示例程序(附源项目文件下载)

    BizTalk 2006 简单入门示例程序(附源项目文件下载) 为初学BizTalk Server 2006的开发人员,提供一个简单入门的示例程序,包括一个Receive Port.Send Port ...

  3. python如何读取mat文件可视化_python Matplotlib数据可视化(1):简单入门

    1 matplot入门指南 matplotlib是Python科学计算中使用最多的一个可视化库,功能丰富,提供了非常多的可视化方案,基本能够满足各种场景下的数据可视化需求.但功能丰富从另一方面来说也意 ...

  4. ARM NEON 编程简单入门1

    原文:http://blog.csdn.net/silentob/article/details/72954618  ARM NEON 编程简单入门1 NEON简介 NEON是适用于ARM Corte ...

  5. Python 简单入门指北(二)

    Python 简单入门指北(二) 2 函数 2.1 函数是一等公民 一等公民指的是 Python 的函数能够动态创建,能赋值给别的变量,能作为参传给函数,也能作为函数的返回值.总而言之,函数和普通变量 ...

  6. EChart.js 简单入门

    EChart.js 简单入门 最近有一个统计的项目要做,在前端的数据需要用图表的形式展示.网上搜索了一下,发现有几种统计图库. MSChart   这个是Visual Studio里的自带控件,使用比 ...

  7. 【我的区块链之路】- Hyperledger fabric的简单入门(四)链码的编写及调试

    [我的区块链之路]- Hyperledger fabric的简单入门(四)链码的编写及调试       之前的文章中我们有讲过了fabric的一些核心的配置文件的选项说明,讲过fabric 的网络启动 ...

  8. 基于vue-cli、elementUI的Vue超简单入门小例子

    基于vue-cli.elementUI的Vue超简单入门小例子 这个例子还是比较简单的,独立完成后,能大概知道vue是干嘛的,可以写个todoList的小例子. 开始写例子之前,先对环境的部署做点简单 ...

  9. 【java开发系列】—— spring简单入门示例

    回顾 1 JDK安装 2 Struts2简单入门示例 前言 作为入门级的记录帖,没有过多的技术含量,简单的搭建配置框架而已.这次讲到spring,这个应该是SSH中的重量级框架,它主要包含两个内容:控 ...

最新文章

  1. Machine Learning | (3) Scikit-learn的分类器算法-k-近邻
  2. Yii框架官方指南系列14——基础知识:开发流程
  3. htpc电脑方案_我终于定稿了客厅HTPC的方案: Matx机箱小喆B3卧倒
  4. Leetcode 42.接雨水 (每日一题 20210629)
  5. 【AI不惑境】网络的宽度如何影响深度学习模型的性能?
  6. 暗通道先验去雾实现过程分析
  7. idea 切换java11_Java 11就在这里,您准备好进行切换了吗?
  8. linux下cat命令详解
  9. python中的流程控制
  10. 其实程序员高工资,好多时候就是加班和自己硬撑出来的
  11. testng入门教程10 TestNG参数化测试
  12. python一定要有主函数_Python 为什么没有 main 函数?为什么我不推荐写 main 函数?...
  13. python交换模式、vim模式TAB自动补齐
  14. stm32F4xx中文参考手册
  15. 时序数据库详解和使用
  16. 谷歌打不开了吧,访问谷歌镜像Glgoo.com吧_我是亲民_新浪博客
  17. 安防摄像头互联网直播方案LiveGBS设计文档
  18. Python生成标签云/词云
  19. 什么是激光波长、激光功率和激光亮度?
  20. GIT修改账号密码重新登录和保存密码

热门文章

  1. 一个淘宝客劫持木马的分析
  2. C++ CMake 使用 Python3
  3. 程序员的自我修养之数学基础07:正交矩阵(正交向量、标准正交基、正交矩阵)
  4. Mysql数据库增量式备份
  5. PX4中文维基汉化项目启动
  6. draggable禁止拖动_Draggable(拖动)组件 属性、事件、方法
  7. 从零开始构建自己的投资辅助系统
  8. 苹果向2周内新购iPad一代用户退款100美元
  9. VMware关闭虚拟机系统后不见了!
  10. android系统提醒功能,安卓手机上怎么设置工作事件提醒?