历史版本3 :行分栏隔行变色错位解决方案 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 问题描述

在行分栏报表中设置隔行变色,可能会出现行错位的情况,如下图所示:

image.png

希望有方案可以解决错位问题,实现同行变色对齐,如下图所示:

image.png

1.2 实现思路

利用条件属性实现。

先根据分栏列数和数据总数判断双数栏位需不需要特殊处理。

再通过计算得到需要特殊处理的行数设置分栏。

2. 操作步骤编辑

2.1 数据准备

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

image.png

2.2 报表设计

1)如下图设计表格:

image.png

2)菜单栏点击模板>报表分栏,在打开的报表分栏页面中按如下图所示步骤设置:

image.png

3)选中 A2 单元格,如下图步骤添加一个背景条件属性:

Snag_aef49bc.png

公式条件为:

ROUNDUP(COUNT(A2[!0])/2,0)%2<>0&&(&A2+(1-ROUNDUP(&A2/ROUNDUP(COUNT(A2[!0])/2,0),0)%2))% 2=0||ROUNDUP(COUNT(A2[!0])/2,0)%2=0&&&A2%2=0

2.3 效果预览

1)PC端

保存报表,点击分页预览,行分栏的隔行变色效果如下图所示:

image.png

2)移动端

image.png

3. 模板下载编辑

已完成模板可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Advanced\行分栏隔行变色错位解决方案.cpt

点击下载模板:行分栏隔行变色错位解决方案.cpt

4. 注意事项编辑

不同的分栏情况对应的公式可能不同,根据2.2节第2步的分栏列数,相应修改公式:

ROUNDUP(COUNT(A2[!0])/列数,0)%2<>0&&(&A2+(1-ROUNDUP(&A2/ROUNDUP(COUNT(A2[!0])/列数,0),0)%2))% 2=0||ROUNDUP(COUNT(A2[!0])/列数,0)%2=0&&&A2%2=0