报表工具对比之样式——BIRT报表VS润乾报表

2023-10-17 13:08

本文主要是介绍报表工具对比之样式——BIRT报表VS润乾报表,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章《免费开源JAVA报表工具对比 BIRT报表VS润乾报表之初体验》中,分别使用两种报表工具(BIRT和润乾报表)做了清单式报表,不过由于报表中并没有做任何样式调整,因此预览的效果看起来比较枯燥单一、不够美观,而且跟整个大平台的色调也不统一。今天我们就来看看怎样通过样式来美化报表。
下面还是分别看一下BIRT报表和润乾报表对于需求样式的满足度以及处理方式。

 

样式要求
1. 满足常规的样式调整,如:字体、字号、前景色、背景色、边框等等;
2. 根据条件做出数据预警,如:金额大于8000元,字体红色显示;
3. 冻结表头,如:excel中不分页冻结窗口的效果;
4. 表体数据区域隔行异色显示;
5. 显示格式,如:金额显示货币符号;
6. 转换显示值,如:数据库查出来性别字段值是0,1,那么为了增加可读性将0显示为”男”,1显示为”女”。

 

下面开始分别操作进行对比:
BIRT
常规样式调整:
1. 可以满足,实现方式如下:
选中所要设置的网格,在属性编辑器Properties  Editor中,选择 General进行网格基本样式设置,包括Font、Size、Color、Background color等。如下图所示:
注:不仅是对于单元格,对于其他的报表元素,如:Lable、Table、Data等也都可以设置。
 
数据预警:
2. 不能满足,暂时未找到实现方法
冻结表头:
3. 不能满足,暂时没找到实现方法
注:没有找到不分页冻结表头的实现方式,不过在找的过程中意外发现了分页时每页显示表头的设置方式,如下图所示(记一下以备后面的不时之需……)

表体数据区隔行异色:
4. 可以满足,实现方式如下:
鼠标指在表格处,会在表格下方出现“Table”按钮,点击一下全选表格,再点击左边选择“Detail”行
切换到“Script”页,从下拉列表中选择“OnCreate”,(这个选择项一定别搞错了,不然就悲剧了…哎)加入如下代码:
if(row.__rownum % 2 == 0) {
    this.getStyle().backgroundColor = "#FAD764";
} else{
    this.getStyle().backgroundColor = "#FFFFFF";
}
效果:
 
显示格式:
5. 可以满足,实现方式如下:
选中所要设置的网格,在属性编辑器Properties  Editor中,选择 Format Number 或 Format DateTime 或Format String进行网格的显示格式设置,如下图所示
 
其中
 Format Number来设定数字的格式;
 Formt Date Time来设定时间日期的格式;
 Format String来设定字符型数据的格式。
转换显示值:
6. 可以满足,实现方式如下:
选中设置的字段,在属性编辑器Property Editor – Data中,选择Advanced然后选择Data找到On render属性,把属性编辑为if(this.getValue()=="CA"){this.setDisplayValue("加利福尼亚州");}
 
效果:
设置前
 
设置后,把英文缩写的州名,转换成中文增强可读性。
 
润乾报表
常规样式调整:
1. 可以满足,实现方式如下:
选中所要设置的网格,在工具栏编辑器中,选择进行网格的基本样式设置,包括字体、字号、字体颜色、网格背景色等。如下图所示:
  
注:除工具栏编辑器中可以对网格基本样式进行设置外,也可以在右侧属性编辑器中选择显示、字体进行设置。
数据预警:
2. 可以满足,实现方式如下:
选中所要设置的网格,在属性编辑器中选择显示,然后选择前景色在表达式里填写表达式为:
if(E2>3,-65536,-16777216) 


效果:
 
冻结表头:
3. 可以满足,实现方式如下:
选择表头行,在属性编辑器中选择行属性,然后在行类型下拉选项中选择报表头,设置后对应行的行首会显示一个“头”字。
 
效果:
  
注:为了突出表头简单设置了表头的样式。
表体数据区隔行异色:
4. 可以满足,实现方式如下:
选中表体部分,在属性编辑器中选择显示,然后选择背景色在表达式里填写表达式为:
if(row()%2!=0,-14336,-1),其中row()是润乾内置函数,取得当前单元格所在行的行号。
效果:
   
显示格式:
5. 可以满足,实现方式如下:
选中设置的字段,在属性编辑器中,选择值然后选择显示格式,双击值单元格选择设置,或者自定义
   
转换显示值:
6. 可以满足,实现方式如下:
选中设置的字段,在属性编辑器中,选择值然后选择显示值表达式为
map(list(1,2,3,4,5),list("哲学","经济学","教育学","理学","工学")),其中用到两个润乾内置函数:map()显示值对照表函数,从对照表中找出当前单元格对应值的显示值;list()获得一个枚举的数据集合。
   
效果:
设置前
    
设置后,把数字编号转换成了专业名称增强了可读性。
  
除了这个办法,还可以选用if()或数据集的方法做显示值转换。
注:显示值与显示格式的进一步设置方式可以参考文档
http://c.raqsoft.com.cn/article/1543563271737
总结一下:

这篇关于报表工具对比之样式——BIRT报表VS润乾报表的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/225598

相关文章

基于Java实现回调监听工具类

《基于Java实现回调监听工具类》这篇文章主要为大家详细介绍了如何基于Java实现一个回调监听工具类,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录监听接口类 Listenable实际用法打印结果首先,会用到 函数式接口 Consumer, 通过这个可以解耦回调方法,下面先写一个

使用Python构建一个Hexo博客发布工具

《使用Python构建一个Hexo博客发布工具》虽然Hexo的命令行工具非常强大,但对于日常的博客撰写和发布过程,我总觉得缺少一个直观的图形界面来简化操作,下面我们就来看看如何使用Python构建一个... 目录引言Hexo博客系统简介设计需求技术选择代码实现主框架界面设计核心功能实现1. 发布文章2. 加

JS+HTML实现在线图片水印添加工具

《JS+HTML实现在线图片水印添加工具》在社交媒体和内容创作日益频繁的今天,如何保护原创内容、展示品牌身份成了一个不得不面对的问题,本文将实现一个完全基于HTML+CSS构建的现代化图片水印在线工具... 目录概述功能亮点使用方法技术解析延伸思考运行效果项目源码下载总结概述在社交媒体和内容创作日益频繁的

基于Python打造一个全能文本处理工具

《基于Python打造一个全能文本处理工具》:本文主要介绍一个基于Python+Tkinter开发的全功能本地化文本处理工具,它不仅具备基础的格式转换功能,更集成了中文特色处理等实用功能,有需要的... 目录1. 概述:当文本处理遇上python图形界面2. 功能全景图:六大核心模块解析3.运行效果4. 相

springboot项目中常用的工具类和api详解

《springboot项目中常用的工具类和api详解》在SpringBoot项目中,开发者通常会依赖一些工具类和API来简化开发、提高效率,以下是一些常用的工具类及其典型应用场景,涵盖Spring原生... 目录1. Spring Framework 自带工具类(1) StringUtils(2) Coll

基于Python实现高效PPT转图片工具

《基于Python实现高效PPT转图片工具》在日常工作中,PPT是我们常用的演示工具,但有时候我们需要将PPT的内容提取为图片格式以便于展示或保存,所以本文将用Python实现PPT转PNG工具,希望... 目录1. 概述2. 功能使用2.1 安装依赖2.2 使用步骤2.3 代码实现2.4 GUI界面3.效

基于Python和MoviePy实现照片管理和视频合成工具

《基于Python和MoviePy实现照片管理和视频合成工具》在这篇博客中,我们将详细剖析一个基于Python的图形界面应用程序,该程序使用wxPython构建用户界面,并结合MoviePy、Pill... 目录引言项目概述代码结构分析1. 导入和依赖2. 主类:PhotoManager初始化方法:__in

使用Python自建轻量级的HTTP调试工具

《使用Python自建轻量级的HTTP调试工具》这篇文章主要为大家详细介绍了如何使用Python自建一个轻量级的HTTP调试工具,文中的示例代码讲解详细,感兴趣的小伙伴可以参考一下... 目录一、为什么需要自建工具二、核心功能设计三、技术选型四、分步实现五、进阶优化技巧六、使用示例七、性能对比八、扩展方向建

Python基于wxPython和FFmpeg开发一个视频标签工具

《Python基于wxPython和FFmpeg开发一个视频标签工具》在当今数字媒体时代,视频内容的管理和标记变得越来越重要,无论是研究人员需要对实验视频进行时间点标记,还是个人用户希望对家庭视频进行... 目录引言1. 应用概述2. 技术栈分析2.1 核心库和模块2.2 wxpython作为GUI选择的优

使用Java实现通用树形结构构建工具类

《使用Java实现通用树形结构构建工具类》这篇文章主要为大家详细介绍了如何使用Java实现通用树形结构构建工具类,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录完整代码一、设计思想与核心功能二、核心实现原理1. 数据结构准备阶段2. 循环依赖检测算法3. 树形结构构建4. 搜索子