当前位置: 首页 > news >正文

普通报表入门

1. 概述
报表设计主要可以分为新建报表、数据准备、报表主体设计、报表预览几大部分。其中报表主体可以分为大标题、小标题、表格数据、结尾几大部分,本文主要以普通报表为例,讲述如何按照报表设计流程快速设计一张报表。FineReport 版本为11.0

1.1 预期效果
希望报表中展示不同地区的销售员、产品销量、销量总量,如下图所示:
在这里插入图片描述
2. 制作步骤
2.1 新建数据连接
新建数据连接的目的是让 FineReport 设计器连接数据库,这样报表就可以在数据库中读取、写入或修改数据。
打开设计器,点击最上方菜单栏中「服务器>定义数据连接」,弹出「定义数据连接」对话框,设计器已经默认连接了一个名为 FRDemo 的内置数据库,点击「测试链接」,弹出「连接成功」提示框,表示数据库 FRDemo 成功与设计器建立连接。
在这里插入图片描述
2.2 新建报表
菜单栏点击「文件」可选择新建报表的类型,或点击快捷按钮,快速新建一张空白的「普通报表」。
2.3 准备数据
数据集是报表设计时的直接数据来源。数据集按照作用范围分为两种:服务器数据集模板数据集
1)本示例在数据集管理面板中选择「模板数据集」,点击上方的+号,新建 数据库查询 ds1,输入 SQL 查询语句:SELECT * FROM 销量 ,取出「销量」表中的所有数据。
2)新建好数据集之后,可在数据集管理面板查看取出的数据。
在这里插入图片描述
在这里插入图片描述
2.4 标题设计
1)选中 A1~D2 单元格,点击「合并单元格」按钮,将其合并,写入报表标题「地区销售概况」。
2)将 A3 、B3 单元格合并后选中,点击上方工具栏「插入斜线」按钮,弹出斜线编辑对话框,在文本编辑框写入文字: 产品| 销售员| 地区。
注:此处使用的竖线符号为英文模式下的符号,同时可以通过添加空格来调整文字的位置。
在这里插入图片描述
2.5 表格数据
1)将数据集中需要展示的数据列拖入到对应单元格中,将数据集中的地区、销售员、产品、销量数据列分别拖入 A4 、B4、C3、C4 单元格中。
2)数据列拖入单元格时,单元格扩展 默认纵向扩展,我们需要将「产品」所在 C3 单元格设置为「横向扩展」。选中 C3 单元格,点击「单元格属性>扩展」,修改扩展方向。
在这里插入图片描述

2.6 计算总销量
本例中需要横向统计每个销售员的销售总量,纵向统计每个产品的销量总计。
1)首先输入表头,在 D3 单元格输入文本「销售总量」,将 A5、B5 单元格合并后输入文本「总计:」。
2)选中 C5 单元格,插入求和公式 sum(C4) ,C4 为「销量」,即纵向统计每个产品的销量总计。插入公式可使用工具栏的快捷按钮。
3)D4 单元格要横向统计每个销售员的销售总量,同理插入求和公式 sum(C4) ,在 D5 单元格插入公式求所有产品销量总和,公式输入 sum(D4) 或 sum(C5) 均可。
在这里插入图片描述
2.7 设置父子格
由于每个单元格均存在父子格关系,单元格会跟随父格扩展或计算 。
所以本例 D4 单元格需要根据「销售员」字段进行计算,即 D4 单元格的左父格需设置为「销售员」所在的 B4 单元格。其余单元格的父子格关系设置为默认即可,如下图所示:
在这里插入图片描述
2.8 设置单元格样式
新建报表时,报表会默认选择设计器应用于模板创建的主题,主题中对于模板样式、单元格样式、图表样式等已经进行了设计,在制作报表时,可以选择「跟随主题」即可快速复用主题中的样式。
1)普通报表默认主题为「经典浅灰」,主题名称展示在报表最上方工具栏处,点击可弹出「主题选择」页面,本示例选择「清爽科技」主题。
2)大标题样式:选择 A1单元格,点击右侧属性面板「单元格属性>样式>跟随主题」,选择「大标题」。
3)小标题样式:调整一下 A3 单元格的行高和列宽,再设置 A3 单元格样式为「跟随主题>小标题」。
4)设置剩余单元格样式,C3、D3、A4、B4、A5 单元格样式均设置为「跟随主题>表头」,C4、D4、C5、D5 单元格样式均设置为「跟随主题>正文」,并适当的调整行高和列宽。
注:在设置每一个样式时,需要每一个进行设置,不能直接拖拽选多个,如果选多个,会出现缺线的情况。
5)调整字体,将 A1~D2 单元格的字体调整为12号字体,其余调整为10号字体。
在这里插入图片描述
3. 效果预览
到这里表格部分就完成了,我们保存报表,点击「分页预览」如下图所示:
在这里插入图片描述

相关文章:

  • 使用html css js 开发一个 教育机构前端静态网站模板
  • Show 『Picture Add + Crosee Line ROI
  • 【ISO 14229-1:2023 UDS诊断(ECU复位0x11服务)测试用例CAPL代码全解析④】
  • 《StyleID:一种无训练的方法将大规模扩散模型适配于风格迁移》
  • Mistral Saba:为中东和南亚量身打造的AI模型
  • npu 瑞芯微rk系列,rknn模型转换以及npu使用
  • ES8字符串填充用法总结:padStart(),padEnd(),rest剩余参数的用法{name,...obj},扩展运算符的用法,正则表达式命名捕获组
  • 聚焦地灾防治,助力城市地质安全风险防控
  • 基于STM32的智能交通信号控制系统
  • Windows环境打印文档的同时自动生成PDF副本的方法
  • SpringBoot中自动装配机制的原理
  • Pytorch实现论文之一种基于扰动卷积层和梯度归一化的生成对抗网络
  • 2024年GESP09月认证Scratch一级试卷
  • 问题定位总结
  • WebSocket在分布式环境中的局限性及解决方案
  • 线程的多种创建方式和使用
  • QML 自定义矩形框Rectangle,实现四个边框自定义大小
  • 反射机制的简单示例
  • pytorch预训练模型下载保存路径更改
  • 【干货教程】DeepSeek R1+Open WebUI构建RAG检索增强知识库的实战教程
  • 小耳朵等来了春天:公益义诊筛查专家走进安徽安庆
  • 财政部党组召开2025年巡视工作会议暨第一轮巡视动员部署会
  • 法学联合书单|法庭上的妇女
  • 袁思达已任中国科学院办公厅主任
  • 北京今日白天超30℃晚间下冰雹,市民称“没见过这么大颗的”
  • 广东:十年后省级水网主骨架全面建成,与国家骨干网互联互通