隔行/列设置背景色

news/2024/11/27 17:43:52/文章来源:https://www.cnblogs.com/lgx5/p/18572778

1. 概述编辑

1.1 问题描述

通过根据条件显示不同背景色可以实现满足某条件时,改变行/列的背景色,那么如果表格的行与行之间需要显示为不同的颜色,该如何实现呢?

1.2 解决思路

通过在「条件属性>背景」中使用公式 row() 获取行号(公式 col() 获取列号),再通过计算实现。

2. 示例一:隔行设置背景色编辑

2.1 准备模板

打开模板%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Primary\DetailReport\数据显示格式.cpt

2.2 隔行设置背景色

选中 A2 单元格,点击右侧「条件属性」,添加一个条件,选择属性为「背景」,点击「编辑」选择一个颜色,设置范围为「当前行」。公式条件类型选择「公式」,点击「定义」输入公式:row()%2=0,输入完成后点击「增加」。

条件说明:row() 为获取当前行号,被 2 整除余 0 即为偶数行。即偶数行有背景,奇数行没有背景。

步骤如下图所示:

1610693446275757.png

3.3 效果预览

PC 端

保存报表,点击「分页预览」,效果如下图所示:
Snag_482ef1.png

移动端

App 端和 H5 端均支持,效果如下图所示:

Snag_4ac5d8.png

3. 示例二:每隔N行设置背景色编辑

以示例一所述模板为例,只需要将 A2 单元格条件属性中的公式修改一下即可实现。

3.1 间隔N行设置背景色

修改后的公式样式为:ROUNDUP((ROW()-M)/N,0)%2=0,公式说明如下:

公式说明
ROW()  获取当前行号
M 标题行数
N 间隔行数
ROUNDUP() 向上取整
ROUNDUP((ROW()-M)/N,0)%2=0 即当前行号从 1 开始,除以间隔行数 N,得到的商向上取整,取整的值若能被 2 整除的行有背景,不能被 2 整除的行没有背景

选中 A2 单元格,则 M=1,设置 N=5,那么将公式修改为 ROUNDUP((ROW()-1)/5,0)%2=0,即从 A2 所在行开始,每隔 5 行显示设置的背景色。

Snag_56589d.png

3.2 效果预览

PC 端

保存报表,点击「分页预览」,效果如下图所示:

1610694833284172.png

移动端

App 端和 H5 端均支持,效果如下图所示:

Snag_68e98b.png

4. 示例三:隔分组设置背景色编辑

在分组报表里,如果按上述方式设置,将会出现如下情况:

Snag_83df66.png

若想要实现按分组设置背景色,则不能在分组的单元格设置条件属性,而是在分组单元格右侧的单元格设置条件属性,根据分组序号来判断是否显示背景色。

 

4.1 准备数据

新建普通报表,新建数据库查询 ds1,SQL 查询语句为:SELECT * FROM 销量

Snag_86df09.png

4.2 设计表格

A1~C1 单元格输入标题,A2~C2 单元格拖入对应的数据列,设置 A2~C2 的扩展方向均为「纵向扩展」,A2 单元格数据设置为「分组」。表格样式如下图所示:

1610698389127931.png

4.3 设置背景色

选中 B2 单元格,点击右侧「条件属性」,添加一个条件,选择属性为「背景」,点击「编辑」选择一个颜色,设置范围为「当前行」。公式条件类型选择「公式」,点击「定义」输入公式:&A2%2=0,输入完成后点击「增加」。

条件说明:&A2 为获取 A2 单元格扩展值的序号,被 2 整除余 0 即为偶数。即偶数序号分组有背景,奇数序号分组没有背景。

步骤如下图所示:

1610699173543177.png

 

4.4 效果预览

PC 端

保存报表,点击「分页预览」,效果如下图所示:
Snag_83eee7.png

移动端

App 端和 H5 端均支持,效果如下图所示:

Snag_98b226.png

5. 示例四:隔列设置背景色编辑

隔列设置背景色必须在列是由「横向扩展」得来的情况下才可以生效,且扩展出的标题行也会变色。

且可以隔列设置背景色时,每隔 N 列原理与每隔 N 行原理一致。

5.1 准备数据

新建普通报表,新建数据库查询 ds1,SQL 查询语句为:SELECT * FROM 销量

Snag_86df09.png

5.2 设计表格

1)选中 A1 单元格,单击右键选择「单元格元素>插入斜线」,输入「销售员|销量|产品」,选中「从左上到右下发散」,点击确定。

1610934007978991.png

2)将数据列拖入对应的单元格,设置各单元格的属性如下表所示:

 

单元格

数据列

属性

A2 产品 纵向扩展,其余默认
B1 销售员 横向扩展,其余默认
B2 销量 无扩展,数据设置为「汇总求和」

表格样式如下图所示:
Snag_ea5efa4.png

5.3 隔列设置背景色

选中 B1 单元格,点击右侧「条件属性」,添加条件,属性下拉选择「背景」。点击「编辑」自定义颜色,设置范围为「当前列」。公式条件类型选择「公式」,点击「定义」输入公式:col()%2=0,输入完成后点击「增加」。

条件说明:col() 为获取当前列号,被 2 整除余 0 即为偶数列。即偶数列有背景,奇数列没有背景。

步骤如下图所示:

Snag_eae5d7a.png

5.4 效果预览

PC 端

保存报表,点击「分页预览」,效果如下图所示:
222

移动端

App 端和 H5 端均支持,效果如下图所示:

 

6. 模板下载编辑

已完成模板可参见:

%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Primary\DetailReport\隔行设置背景色.cpt

%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Primary\DetailReport\每隔N行设置背景色.cpt

%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Primary\DetailReport\隔分组设置背景色.cpt

%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\primary\DetailReport\隔列设置背景色.cpt。

点击下载模板:

隔行设置背景色.cpt

每隔N行设置背景色.cpt

隔分组设置背景色.cpt

隔列设置背景色.cpt

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

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

相关文章

使用命令打开SQLServer配置管理器

当安装完sqlserver数据库后 发现找不到菜单sqlserver配置管理器时使用命令(window+r)打开cmd端,根据sqlserver版本号选择对应命令SQLServerManager15.msc(对于 SQLServer2019) SQLServerManager14.msc(对于 SQLServer2017) SQLServerManager13.msc(对于 SQLServer2016) SQLServ…

c#配置文件的使用记录

我有一个控制台应用程序, 其中有一些变量我想写在配置文件中 原来的app.config是这样的位置放在configuration中程序的引用中添加 在程序中使用如下写法即可取得配置中的对应值 string userNo = ConfigurationManager.AppSettings["UserNo"];

数据库开发规范v1.0

一、建表规约【强制】表达是与否概念的字段,必须使用 is_xxx 的方式命名,数据类型是 unsigned tinyint( 1 表示是,0 表示否)。说明:任何字段如果为非负数,必须是 unsigned。 正例:表达逻辑删除的字段名 deleted_flag,0 表示删除,1 表示未删除。【强制】表名、字段名必…

ABAP开发规范V1.0

1. 概要 1.1目的 该文档定义了在开发与维护ABAP程序过程中必须遵守的规范与标准。该文档应当被视为一个动态的文档,该文档会根据需要进行增补和修订。 开发规范的重要作用在于保持整个开发团队的开发风格一致,提高程序质量,降低维护压力。 1.2适用范围 所有ABAP开发及系统配…

如何保证RocketMQ消息不丢失

如何保证RocketMQ消息不丢失 目录如何保证RocketMQ消息不丢失背景什么情况下RokectMQ消息会丢失解决RocketMQ消息丢失问题消息生产防止消息丢失Broker端消息丢失消费端处理消息总结 背景 在金融系统中MQ消息的消息丢失是不允许的,消息的丢失会导致支付状态订单状态出现混乱。接…

优化服务入口设立:提升用户满意度的全方位指南

一、引言 在数字化浪潮的席卷下,企业服务质量与服务入口设立的合理性、便捷性紧密相连。一个出色的服务入口能成为企业与用户之间的高效桥梁,不仅方便用户获取服务,还能提升企业运营效率,进而对用户满意度产生深远影响。然而,现实中不少企业从IT部门角度构建的服务流程和工…

postgres数据库大版本升级

Postgres数据库大版本升级1.升级的介绍当前PostgreSQL版本号由主要版本号和次要版本号组成。 10之前的版本由三部分组成,10开始只有两部分数字组成。例如,在版本号10.1中,10是主要版本号,1是次要版本号,这意味着这将是主版本10的第一个次要版本。 对于PostgreSQL版本10.0之…

通过本地私有的镜像仓库harbor解决网络原因导致的jdk无法加载而造成的docker打包错误

​各种网络原因,或是docker.io无法访问,或是阿里的镜像源故障,导致java打包发布的时候报错,很影响代码发布的质量。解决思路:墙出去把jdk下载下来,代码使用本地的harbor库进行引用,一劳永逸。此解决方法也适用于国外优质不频繁变动的镜像源的本地化使用。解决方法 1. 墙…

过路车辆识别智慧矿山一体机行人不行车违章识别:安防摄像头中的宽动态如何测量?

在安防监控领域,宽动态技术是衡量摄像头性能的重要指标之一,它直接影响到摄像头在不同光照条件下捕捉图像的能力。随着技术的发展,宽动态技术已经从模拟时代的初步探索,发展到网络高清时代的成熟应用。 一、安防摄像头中的宽动态如何测量? 1、实现方式 模拟时代,实现宽动…

CS3231 Theory of Computation 错题集 归档

埃癸斯 (Aegis) 虽然是高性能的反暗影压制兵装 (Anti-Shadow Suppression Weapon),但她在逻辑推理方面并未得到特殊强化。在辰巳人工岛的月光馆学园插班入学后,埃癸斯常常感觉自己跟不上课程进度。埃癸斯尤其不擅的学科是计算理论 (Theory of Computation);她认为,作为人工…

CS3231 Theory of Computation 归档

计算理论 (Theory of Computation) 当之无愧是计算机科学王冠上的明珠;考虑到我贫瘠的智商,以后估计不会朝 TCS 方向来走;但对这些优雅的理论有一个最基本的了解应当是 CS 学生的素养。 讽刺的是,你坑近二十年前就没有开设这门课了 [1],只得留待交换来上。老师是印度人,口…

vxe-table 实现表格数据分组,按指定字段数据分组

实现表格数据分组,按指定字段数据分组,使用树结构来实现分组功能。 官网:https://vxetable.cn<template><div><vxe-grid v-bind="gridOptions"></vxe-grid></div> </template><script> import XEUtils from xe-utils c…