FineReport

1.FineReport

官网 :FineReport产品简介- FineReport帮助文档 - 全面的报表使用教程和学习资料

下载地址 免费下载FineReport - FineReport报表官网

FineReport是一款用于报表制作,分析和展示的工具。

  • 普通模板:是 FineReport 最常用,用的最多的设计模式,保存的文件类型为 cpt,依靠着单元格的扩展与父子格的关系来实现模板效果,可进行参数查询,填报报表,图表设计等等,但是在分页预览模式下不能在报表主体中展示控件,而且单元格间相互影响,很难保持独立性。

  • 聚合报表:一般适用于一张模板中显示多个独立模块的报表。

  • 决策报表:一般适用于控件的展示,保存的文件类型为frm,很好的弥补了普通报表分页预览不能展示控件的问题,同时决策报表可以进行自由拖拽设计,自适应页面大小显示,可以更好的在移动端展示。

2.数据库

(1)FineReport自带一个数据库FRDemo,也可以自定义导入数据库。

(写好数据库名,账号密码,端口号即可)

(2)数据集分类

  • 模板数据集:只能在当前报表模板中使用。

  • 服务器数据集:可以在所有报表模块中使用。

3.表格操作

(1)左下方加号数据库查询/选择数据库/搜索相应表/将其拖入空白区/编辑查询语句/可预览/确定。

(2)数据集编辑好后,切换模板数据集/将其字段拖入编辑区/自定义表格样式。

  • 手写单元格为固定文本,拖入单元格为行列文本(运行前只显示一格)。

(3)斜线添加:点击单元格/右键/单元格元素/插入斜线/右上到左下写字段名(中间英文竖线|隔开)。

(4)HS计算:直接单元格运算,点击F(x)编辑HS,例如:“=SUM(C3)”。

(5)行列字段关联/单击单元格/过滤/例子:“销售员 = (数据列) ds1 销售员”。

4.图表操作

(1)选定FW/合并单元格/右键/单元格元素/插入图表/选择图表/确定。

(2)取消图表上左父格。

(3)图表属性/数据/选择单元格数据/定义分类名(=B3)、系列名(=C2)、其值(=C3)。

(4)图表属性/样式/可更改标题等大量属性样式。

(5)图表属性/特效/交互属性更改工具栏等。

(6)图表属性/特效/条件显示更改柱子颜色、渐变、闪烁特效等。

5.控件操作

查询控件步骤:模板/模板参数/“+”/改名字/完成模板参数的定义/单击上方阴影区铅笔操作控件区。

右侧点击控件设置,在控件区域内方可编辑。

  • 标签控件:编辑控件名称和控件显示值。

  • 下拉菜单控件:编辑控件名称和控件显示默认值。

  • 编辑数据字典,选择数据库与数据表,实际值与显示值(对应好目标列)。

  • 返回编辑区,找到对应目标列的单元格,双击/过滤/选择可选列、操作符、参数等,之后添加即可。

控件事件:对某事件进行事件添加:例如初始化后,代码编写 "alert('初始化后的事件')",运行时会有对应弹窗。

6.网页操作

(1)报表做好后,FineReport中,菜单栏点击服务器/报表平台管理。

(2)点击左侧管理系统/目录管理/添加目录/输入名称即可。

(3)随后在目录管理最下方找到目录,添加模板,选择对应的cpt报表文件,编辑好名称。

(4)回到决策系统目录首页,找到刚刚添加的项目,打开即可查看报表。

7.聚合报表搭建

(1)聚合报表固定页面大小,表格图表均靠拖拽,可自定义调节大小及扩展。

(2)图表方面,由于聚合报表各模块相互独立,不继承其父单元格,若想使用其他模块数据,进行数据绑定时,数据采集不能写“=B3”,应写“=block1~B3”(模块名~单元格名),模块名点击模块移动处即可获取。

(3)其他的跟普通报表一样,控件模块同上。

8.决策报表搭建

(1)决策报表自适应大小,页面大则大,页面小则小。

(2)新建空白画布,拖参数指定控件区域,拖报表块指定表格区域,拖图表指定图表区域。

(3)图表方面,决策报表各模块独立,若想使用其他模块数据,进行数据绑定时,数据采集不能。写“=B3”,应写“=report0~B3”(模块名~单元格名),模块名可在组件设置处查看。

(4)其他的跟普通报表一样,控件模块同上。

9.单元格

(1)扩展方式:不扩展(所有数据一个格)、纵向扩展(默认)、横向扩展。

(2)父格:若左边是右边的爹,点右边时他爹会有箭头显示,能证明他是他爹。

(3)断绝关系:单元格属性中父格设置为无,子格就不认爹了。

(4)若有上父也有左父,俩爹!且均为默认属性,那么子格设置无,这样会正常随他俩爹扩展。

(5)一父一子,跟他爹同向,子格同格显示;跟他爹逆向,乱;子格无向,自动随他爹走。

10.纵横伸展

(1)伸展:非数据列和数据列一起变动,若不伸展,则在单元格属性处取消即可。

(2)排序:

  • 死点

  • 开发人员控制,则用扩展后直接排序即可。

  • 活点

  • 用户控制,表头区域自定义,表头设置打开,选好单元格。

(3)接着改纹理的幌子插入图片:选择某单元格/单元格属性/样式/单元格/背景/填充/图片。

11.过滤数据

(1)数值列过滤数据:

  • 拖入字段的单元格/双击/过滤/普通/选条件就完了。

  • 拖入字段的单元格/双击/过滤/公式/写条件/增加/确认。

  • 例如:LEFT(订单ID,3)=103,筛选订单ID前三位是103的。

(2)更牛逼的筛选方式:

  • 添加模板数据集时直接用代码筛选。

  • 比如:where 地区 = '${area}',展开数据集时会有筛选提示。

  • 添加控件操作,见本章第五题,但不用返回编辑区过滤方可直接运行。

12.三级联动

当参数之间有层级关系时,需要在选择参数时实现联动效果。

定义查询所有数据的数据集(总数据集、地区集、销售员集、销售总量集)

(1) -- 总数据集SELECT * FROM 销量 where 1=1 ${if(len(area)=0,'','and 地区="'+area+'"')} ${if(len(xsy)=0,'','and 销售员="'+xsy+'"')} 
(2) -- 地区数据集SELECT distinct 地区 FROM 销量
(3) -- 销售员数据集SELECT distinct 销售员 FROM 销量 where 1=1 ${if(len(area)=0,'','and 地区="'+area+'"')}
(4) -- 销售总量数据集SELECT 销售员,sum(销量) as 销售总量 FROM 销量 where 1=1 ${if(len(area)=0,'','and 地区="'+area+'"')} ${if(len(xsy)=0,'','and 销售员="'+xsy+'"')} group by 销售员

添加控件,数据字典编辑,类型设置:数据查询,其他同第5题。

13.控件为空则显示All

(1)模板参数:在对应单元格内过滤条件用函数,代码为:if(len(地区)=0,NOFILTER,地区)

  • 如果参数等于0,也就是啥也没选,用NOFILTER不会筛选任何值,否则筛选对应参数

(2)数据集参数:导入数据集时代码:

SELECT * FROM 订单 WHERE 1=1 ${if(len(area)==0,"","and 货主地区 = '"+area+"'")}
  • 更牛逼的筛选语句,导入数据集时直接代码筛选,比方式1更牛逼。

14.填报报表

数据库中新建库和表格:

create database if not exists itheima charset=utf8;
create table if not exists itheima.tb_user(
id int,
name varchar(20),
age int,
gender varchar(20)
);

(1)FineR服务器/定义数据连接/连接到本地/默认编码。

(2)添加数据集/select * from 表名;

(3)拖入字段列后/为其各字段添加控件/文本控件等。

(4)模板/报表填报属性/内置SQL/智能提交/智能添加字段/选主键/智能添加单元格/选择对应列/未修改不更新/确定。

(5)模板/模板Web属性/报表页面设置/为该模板单独设置/选择对应控件/确定/填报预览。

(6)选定指定单元格/按钮控件/设置个插入行和插入列。

15.Tomcat启动

用Tomcat启动数据决策网页系统,找到Tomcat文件夹/bin/startup.bat,双击即可。

访问网址:http://localhost:8080/webroot/decision/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/29655.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于glibc-all-in-one下载libc2.35以上报错问题

./download libc版本 下载2.35时报错:原因是缺少解压工具zstd sudo apt-get install zstd 下载后重新输命令就可以了 附加xclibc命令 xclibc -x ./pwn ./libc-版本 ldd pwn文件 xclibc -c libc版本

【嵌入式】适配大多数STM32的最小系统设计

大多数的参赛作品以及毕业设计中都仅仅简单的使用STM32F103最小系统板加上洞洞板或面包板。这样的设计虽然可以进行功能演示,但是由于市面上的最小系统板太过简单,并没有发挥出STM32系列MCU的强大功能,而且看起来很不美观,为了在参…

PHP基础语法【上】

文章目录 一、环境安装二、代码应该写在哪里?三、什么是错误?四、变量无需声明变量变量命名规则变量的作用域可变变量 五、常量常量的定义常量的特性 六、数据类型NULL 空值Boolean 布尔类型Integer 整型Float 浮点型String 字符串Array 数组Object 对象…

【SkiaSharp绘图05】SKPaint详解(三)之ImageFilter(颜色、组合、膨胀、移位、光照、反射、阴影、腐蚀、变换)

文章目录 ImageFilterCreateColorFilter 颜色滤镜CreateCompose 滤镜组合CreateDilate 膨胀滤镜CreateDisplacementMapEffect 移位映射CreateDistantLitDiffuse 光照CreateDistantLitSpecular 反射光照CreateDropShadow阴影效果CreateDropShadowOnly 只阴影效果CreateErode腐蚀…

Python热涨落流体力学求解算法和英伟达人工智能核评估模型

🎯要点 🎯平流扩散简单离散微分算子 | 🎯相场模拟:简单旋节线分解、枝晶凝固的 | 🎯求解二维波动方程,离散化时间导数 🎯英伟达 A100 人工智能核性能评估模型 | 🎯热涨落流体动力学…

【无重复字符的最长子串】

无重复字符的最长字串 一、题目二、解决方法1.暴力解法2.滑动窗口哈希 三、总结1.es6 new set()的用法添加元素add()删除元素delete()判断元素是否存在has 2.滑动窗口和双指针的联系和特点 一、题目 二、解决方法 1.暴力解法 解题思路:使用两层循环逐个生成子字符串…

VMware软件的安装与安装Win10系统

上一篇写了(虚拟机)VMware软件的安装及Ubuntu系统安装,这次续上部分,安装完Ubuntu系统后,又安装了win10,也记录一下。 事前准备好win10镜像文件,可在微软官网下载 入口地址:软件下…

深入学习Java `synchronized` 关键字

深入学习Java synchronized 关键字 synchronized关键字通过确保在同一时间只有一个线程可以执行某个代码块,从而防止多个线程同时访问共享资源时发生数据不一致的问题。 修饰方法 当synchronized用于修饰实例方法时,表示当前实例对象是同步锁。这意味…

全球首个开源类Sora模型大升级,16秒720p画质电影感爆棚!代码和权重全面开源!

目录 01 视频界开源战士 02 深度解码技术 03 打破闭环,开源赋能 潞晨Open-Sora团队刚刚在720p高清文生视频质量和生成时长上实现了突破性进展! 全新升级的Open-Sora不仅支持无缝生成任意风格的高质量短片,更令人惊喜的是,团队选…

[每日一练]update和case-when语句联合实现条件更新

该题目来源于力扣:. 627. 变更性别 - 力扣(LeetCode) 题目要求: Salary 表:----------------------- | Column Name | Type | ----------------------- | id | int | | name | varchar |…

electron录制-镜头缩放、移动

要求 1、当录屏过程中,鼠标点击,镜头应该往点击处拉近,等一段时间还原 2、录屏过程中,可能会发生多次点击,但是点击位置偏差大,可能会导致缩放之后,画面没出来,因此需要移动镜头帧 效果如下 electron录制-镜头缩放 实现思路 1、监听鼠标点击、键盘按下事件 2、对以上…

【windows|002】WEB服务和域名介绍

🍁博主简介: 🏅云计算领域优质创作者 🏅2022年CSDN新星计划python赛道第一名 🏅2022年CSDN原力计划优质作者 🏅阿里云ACE认证高级工程师 🏅阿里云开发者社区专…

【算法与设计】期末总结

文章目录 第一章 概述算法与程序时间复杂性求上界 第二章 递归与分治双递归函数——Ackerman函数分治策略大整数乘法两位两位四位x四位 三位x三位两位x六位 第三章 动态规划矩阵连乘基本要素最优子结构子问题重叠 备忘录 第四章 贪心算法活动安排问题基本要素贪心选择性质最优子…

pg表空间和mysql表空间的区别

一、表空间的定义 1、在pg中表空间实际上是为表指定一个存储的目录。并且在创建数据库时可以为数据库指定默认的表空间。创建表和索引时可以指定表空间,这样表和索引就可以存储到表空间对应的目录下了。 在pg中一个库中可以有多个表空间,一个表空间可以…

6月17(信息差)

1.马斯克最新预测:未来不再需要手机 将被脑机芯片替代 当地时间6月17日,马斯克高仿号“Not Elon Musk”发帖称:“你会在你的大脑上安装一个Neuralink接口,让你通过思考来控制你的新X手机吗?”对此,马斯克本…

yolov10--C#接口

一、前言 本章主要讲解yolov10的C#接口,主要是使用微软开发的openvinocsharp工具加载yolov10模型,并做推理。 二、yolov10模型转换 这里为了演示,使用官方yolov10m模型(其他大小的模型同理)做演示,可从下方…

游戏服务器研究一:bigworld 开源代码的编译与运行

1. 前言 bigworld 已经开源了它的代码,而我对于大世界的 scale 很感兴趣,所以就尝试把代码跑起来研究。但是,整个过程比我原先预想的复杂得多。 虽然能找到一些官方的帮助文档,但这些文档要么过旧,要么过于详尽&…

【护眼知识】护眼台灯真的有用吗?带你看台灯怎么选对眼睛好

在数字化时代,我们的眼睛无疑承受着前所未有的压力。无论是长时间盯着电脑屏幕,还是沉浸在书本的海洋中,眼睛的健康都成为了我们不容忽视的问题。中国现有约500万盲人,占总人口的0.4%,是世界上盲和视力损伤严重的国家之…

浏览器加速播放视频技巧

当我们看网页中的视频时,想加速播放,但是选项最高只能2倍速时,还想再加快播放如何操作? 此时我们可以按F12打开浏览器开发者选项,然后点击控制台,在浏览器输入如下代码: document.querySelecto…

css的应用

css是一种样式表语言,为html标签修饰定义外观,分工不同 <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title><link href"css/demo.css" rel"stylesheet"/><style>/*cssx注释内…