排序着色展示

教学视频

概述

在展示数据集时,要根据数据集中某个字段进行排序,同时列表要实现隔行变色,对于某些特定数值,要以高亮色显示,效果如下图所示:

image-20211027110635963

上面的示例当中,取员工数据,按员工出生日期进行排序,员工薪水>20000的高亮显示,同时数据表格隔行变色展示。

要实现上面的例子,数据排序有两种方法实现,一种是在数据集SQL层面添加order by实现,如:select * from employee order by birthday asc;另一种就是在单元格中通过单元格绑定的字段排序实现。隔行着色及数字大于某个值高亮显示可以用条件属性实现。

采用SQL添加order by方式实现数据排序比较简单,这里介绍是通过单元格绑定的字段排序实现。

实现方法

  1. 设计基础报表

加载员工表数据集,设计报表,第一列绑定birthday,第二列绑定employee_name,第三列绑定degree,第四列绑定salary,效果如下:

image-20211027111550953

2.设置排序字段

选中A1单元格,也就是birthday绑定的单元格,在右侧的属性面板中设置数据展开后排序为正序,如下图所示:

image-20211027111849398

保存预览,可以看到birthday列已经按从小到大顺序展示,但日期包含的时分秒,如下图:

image-20211027112017141

要去除时分秒,选中A1单元格,在右侧属性面板中切换到渲染的页签,设置格式化类型为日期,具体的格式化值为yyyy-MM-dd,如下图:

image-20211027112302451

保存后再次预览,可以看到第一列的时分秒已经消失。

注意:日期类型的格式化,只能针对当前单元格值为日期值的处理,如果当前单元格值不是日期,且不能转换成日期,那么设置成日期类型进行格式化时会产生错误。

  1. 设置隔行变色

选择是B1单元格(也可以选择其它单元格),在右侧属性面板中切换到渲染的页签,添加一个条件渲染项,在弹出窗口中配置成如下样式:

image-20211027113410399

在这个条件渲染项中,条件左值:row() % 2,其中row()是一个标准函数,表示取生成报表的行号,行号从1开始,row() % 2表示行号除2后的余数,这里的判断就是余数是否为0,如果是0,那么就添执行背景色的渲染操作,操作的范围是当前行

保存预览效果如下图所示:

image-20211027113834691

  1. 特定数值高亮显示

选中D1单元格,在右侧属性面板中切换到渲染的页签,添加一个条件渲染项,在弹出窗口中配置成如下样式:

image-20211027114116312

条件左值#表示的是当前单元格值,这是一个特殊表达式,用于直接取当前单元格运行时的值,条件满足后会对当前字段颜色进行渲染,作用范围是当前单元格,保存预览效果如下:

image-20211027114320944

results matching ""

    No results matching ""