FineReport----报表模板入门教程1
FineReport就一款类Excel操作界面的报表工具,通过拖拖拽拽简单实现报表制作,实现数据展示、数据查询、数据录入功能,并且支持图形多样化展示。
一、入门小例子
1. 打开设计器
启动FineReport设计器,弹出设计界面。
2. 连接数据源
在设计报表前,首先要添加报表中需展示的数据来源,如安装设计器后自带的内置FRDemo数据库。
选择菜单服务器>定义数据连接,如下:
3. 新建工作簿
点击菜单文件>新建工作簿或者点击
4. 添加数据集
在制作报表前,先从数据源中取出这张报表所用的数据,如使用FRDemo中的销量表制作一张地区销量表。
在左侧模板数据集面板中,新建数据集ds1,SQL语句为:SELECT * FROM [销量],如下图所示:
5.报表样式
FineReport工具可以轻松快捷地制作出一张报表,如下图地区销量报表:
6. 实现步骤
6.1 设计表样式
报表主设计界面是一个类似Excel的表格,一些基本的使用方式都与Excel类似,用户可以轻松的设计报表:
可以对边框、字段,格式进行设置。
对销售进行求合,两种方式设置数据列
1、双击弹开
2、右上角对单元格设置
7 预览
二、小知识点
1、单元格
1)
1)数据展示时,单元格由一个变多个
2)比如图中的灰色的小箭头向下,代表数据列展示时几下扩展
3)设置横向
2)
纵向时父格的扩展性要设置横向向,不然无法识别,因为默认他是纵向。
2、分组报表
默认是分组。
3、自由报表
4、交叉报表
5、多源报表
增加一个销售总额的数据集
6、主子报表
两个表进行关联
金额计算:单价*数量*(1-折扣)
序号,先设置左父格b7,然后进行编号 。
7、动态格间运算
1)比较
B2[A2:1]:B2单元格对应A2单元格扩展出来的对应B2的值
B2-B2[A2:1]:B2-B3
2)占比
B2[!0]:B2扩展出来的所有值
B2/SUM(B2[!0]):B2/B2和
3)环比
B2[A2:-1] :B2单元格对应A2扩展出来上一个单元格,对应B2的值
&A2:A2扩展出来所有当前单元格值
if(&A2>1,B2/B2[A2:-1],0),如A2值大于1 ,则B2/B1
4)逐层累计
D2[B2:-1]:D2单元格对应B2扩展出来的上个单元格,对应D2的值
D2[B2:-1]+C2,是D1+C2
5)跨层累计
if(&B2>1,D2[B2:-1]+C2),D2[A2:-1,B2:!-1]+C2):如果B2=1,上一个年最后一个D2值加C2
6)条件,总额超过2500的月份个数
先设置数据2500的数据,字休显示为红色
A2=$A2:当年
count(B2[!0]{A2=$A2 && C2>2500})
8、条件属性
1)设置新值
2)隐藏行高
$$$:当前值
3)隔行设置颜色
4)当值处于某个值的时显示红色
9、超级链接
1)链接网页 2)链接另个报表 3)弹出框(js)4)邮件等
下面例子是根据条件链接 到另个报表
设置地区不同指向不同报表,要设置数据集条件,如下:select * from 销量 where 地区=‘${area}’
设置area为参数,在数据库查询时,点击预览时可以选择area为华东,进行预览数据 。
超级链接,area=$$$
10、参数 入门
1)、数据集参数
添加控件
2)选择 模版->模版参数-添加一个参数
模版参数 需要与过滤条件结合
然后就是添加 控件与之前 一样。
3)全局参数
选择服务器->全局参数->添加 一个全局参数-步骤与模版参数一样。
参数路径
11、参数为空选择全部
1)数据集参数
SELECT * FROM 销量 where 1=1 ${if(leng(area)==0,"","and 地区=' "+area+" ' ")}
可以在日志中查看 SQL语句
有值 时:
没值时
2)模版参数
if(len($a)==0,nofilter,$a)
如果参数a长度为0,(nofilter)不过滤,不然就等于a参数的值
12、填报简介
添加控件
设置报表属性
选择“报表填报属性”
与数据库字段关联
填报录入
填报预览
13、多sheet填报
与EXECL一样,增加一个excel页签
预览
14、图表
单元格图表可以有父子关系,可以根据父子扩展关系影响数据,悬浮图表不受限制。
在单元格内插入图表,
定义图表的数据
设置图表样式
预览
15、图表交互
FineReport----报表模板入门教程1的更多相关文章
- C++模板入门教程(一)——模板概念与基本语法
转载请保留以下声明 作者:赵宗晟 出处:http://www.cnblogs.com/zhao-zongsheng/ 前言 有些人提到C++模板就会下意识地觉得可怕.看不懂.避而远之.其实模板并不复杂 ...
- ActiveReports 报表控件官方中文入门教程 (3)-如何选择页面报表和区域报表
本篇文章将介绍区域报表和页面报表的常见使用场景.区别和选择报表类型的一些建议,两种报表的模板设计.数据源(设计时和运行时)设置.和浏览报表的区别. ActiveReports 报表控件官方中文入门教程 ...
- ActiveReports 报表控件官方中文入门教程 (1)-安装、激活以及产品资源
本系列文章主要是面向初次接触 ActiveReports 产品的用户,可以帮助您在三天之内轻松的掌握ActiveReports控件的基本使用方法,包括安装.激活.创建报表.绑定数据源以及发布等内容.本 ...
- ActiveReports 报表控件官方中文入门教程 (2)-创建、数据源、浏览以及发布
本篇文章将阐述首次使用 ActiveReports 报表控件 的方法,包括添加报表文件.绑定数据源以及如何发布报表等内容. ActiveReports 报表控件官方中文入门教程 (1)-安装.激活以及 ...
- mui初级入门教程(六)— 模板页面实现原理及多端适配指南
文章来源:小青年原创发布时间:2016-07-26关键词:mui,webview,template,os,多端适配转载需标注本文原始地址: http://zhaomenghuan.github.io. ...
- CPF 入门教程 - 设计器和模板库的使用(五)
CPF netcore跨平台UI框架 系列教程 CPF 入门教程(一) CPF 入门教程 - 数据绑定和命令绑定(二) CPF 入门教程 - 样式和动画(三) CPF 入门教程 - 绘图(四) CPF ...
- JasperReports入门教程(四):多数据源
JasperReports入门教程(四):多数据源 背景 在报表使用中,一个页面需要打印多个表格,每个表格分别使用不同的数据源是很常见的一个需求.假如我们现在有一个需求如下:需要在一个报表同时打印所有 ...
- JasperReports入门教程(三):Paramters,Fields和Detail基本组件介绍
JasperReports入门教程(三):Paramter,Field和Detail基本组件介绍 前言 前两篇博客带领大家进行了入门,做出了第一个例子.也解决了中文打印的问题.大家跟着例子也做出了de ...
- JasperReports入门教程(二):中文打印
JasperReports入门教程(二):中文打印 背景 在上一篇中我们介绍了JasperReport的基本入门,也展示了一个报表.但是我们的示例都是使用的英文,如果我们把需要打印的数据改为中文会怎么 ...
随机推荐
- MongoDB GridFS最佳应用概述
<MongoDB GridFS最佳应用概述> 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs GridFS是MongoDB数据库之上的一个简单 ...
- 【Android界面实现】View Animation 使用介绍
转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992 我们能够使用view animation 动画系统来给View控件加入tween动画(下称& ...
- 点滴积累【other】---.net程序员面试题总结
自己总结的.net的面试题. 说明:以下代码均已经过验证正确无误! C#: 1.c#实现N的阶乘: class Program { static void Main(string[] args) { ...
- Atitit.分区对索引的影响 分区索引和全局索引 attilax总结
Atitit.分区对索引的影响 分区索引和全局索引 attilax总结 1. 分区的好处1 2. 分区键:2 3. 分区的建议:2 4. 分区索引和全局索引:2 5. 全局索引就是在全表上创建索引, ...
- 2018.5.2(7:20到的办公室开始早课 阮一峰的JS) 所有的默默努力都是为了让自己看起来毫不费力
continue语句用于立即终止本轮循环,返回循环结构的头部,开始下一轮循环. break语句用于跳出代码块或循环. 标签(label) JavaScript 语言允许,语句的前面有标签(label) ...
- mysql之内存表
一.引言 昨天下午老大让我查资料看一下mysql的内存表在主从备份中是否能被复制,我还没听说过内存表呢,于是上网查资料,记录一下,以便查阅.学习 二.进展 参考: http://www.cnblogs ...
- 在linux下编译运行C++程序
头一回...把windows下的程序挪到linux下,代码见这篇随笔 1.编译ZTHREAD,使用./configure失败,直接编译的,方法还是上面提到的那篇随笔 2.编译源码,最开始用的cc,后来 ...
- HTML5坦克大战(1)绘制坦克
坦克尺寸如下: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head&g ...
- matlab和C/C++混合编程--Mex (转载)
matlab和C/C++混合编程--Mex 最近的项目需要matlab和C的混合编程,经过一番努力终于完成了项目要解决的问题.现在就将Mex的一些经验总结一下,当然只是刚刚开始,以后随着学习的深入继续 ...
- Hive学习笔记——基本配置及测试
1.什么是Hive Hive 是建立在 Hadoop上的数据仓库基础构架.它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储.查询和分析存储在Hadoop中的大规模数据的机 ...