条件渲染

教学视频

目录

概述

条件渲染是指利用条件表达式,在满足条件的情况下,对当前单元格、当前行或当前列的值及外观进行个性化定制。一个条件渲染项由 条件满足后要渲染的内容 两部分组成,可同时满足多种渲染效果。

概念详解

条件定义

切换到条件渲染标签,单击 + 按钮即可添加一项条件渲染设置。

image-20210428143836273

image-20210428143915052

  • 标题:为当前条件渲染项设置一个可读的名称;
  • 条件左值表达式 / 比较符 / 条件右值表达式:构成一条完整的条件判断;
  • 与上一条件关系:当存在多个条件时,支持 并且 (and)或者 (or) 的组合关联;
  • 组合 / 打散:可将多条条件组合为一组(带括号的复合条件),也可将组合条件打散还原。

image-20210428144240543

比较符支持多种匹配方式:

image-20210428144437118

作用范围

作用范围指条件满足后,渲染效果所施加的目标区域,一共有三种,可三选一:

  • 当前单元格
  • 当前行
  • 当前列

条件满足后要渲染的内容

条件满足后要渲染的内容,目前支持的有:

名称 作用范围 说明
字体颜色 当前单元格,当前行,当前列 设置作用范围内字体的颜色
缩进 当前单元格,当前行,当前列 设置作用范围内文字的缩进距离
边框 当前单元格,当前行,当前列 设置作用范围内单元格的边框
背景色 当前单元格,当前行,当前列 设置作用范围内单元格的背景色
字体样式 当前单元格,当前行,当前列 设置作用范围内字样式
列宽 当前列 设置当前列的列宽
行高 当前行 设置当前行的行高
链接 当前单元格 设置当前单元格的内容为链接
新值 当前单元格 用表达式实现自当前单元格内容的定制功能
分页 当前行 在条件满足时于行前或行后强制分页
换行计算 当前单元格 控制单元格是否自动换行
内容渲染 当前单元格 复用内容渲染能力(HTML/图片/条码等)

其中"链接"的详细用法参考:链接;"内容渲染"的详细说明参考:内容渲染

操作示例

下面通过一个完整范例演示各渲染内容的设置效果。本例所有条件均为:当 E12(薪水)的值 大于 20000 时,对相应单元格应用对应的渲染。

前置准备

新建报表,参考数据库数据集添加 EMPLOYEE 数据库数据集。

报表设计

设计界面如下:

image-20210428143141738

字段绑定设计如下:

单元格 字段
A12 EMPLOYEE_ID
B12 DEGREE
C12 SEX
D12 EMPLOYEE_NAME
E12 SALARY
F12 BIRTHDAY
G12 EMAIL
H12 WEB
I12 CMNT

逐单元格设置条件渲染

A12 — 字体颜色:E12 > 20000 时,字体颜色为红色。

image-20210428144543083

B12 — 缩进:E12 > 20000 时,缩进字符数为 2。

image-20210428144735278

C12 — 边框:E12 > 20000 时,边框颜色为蓝色。

image-20210428144837023

image-20210428144906451

D12 — 背景色:E12 > 20000 时,单元格背景为绿色。

image-20210428144929766

E12 — 字体样式:E12 > 20000 时,字体为粗体加删除线。

image-20210428145007380

image-20210428145045776

F12 — 列宽:E12 > 20000 时,列宽为 120pt。

image-20210428145106978

G12 — 行高:E12 > 20000 时,行高为 50pt。

image-20210428145153618

H12 — 链接:E12 > 20000 时,为单元格添加网页链接。

image-20210428145228349

image-20210428145437115

I12 — 新值:E12 > 20000 时,单元格内容替换为 A12 + ":自定义字符串"

image-20210428145538265

上述范例的效果汇总如下:

  • 字体颜色:薪水大于 20000 的字体为红色
  • 缩进:薪水大于 20000 的缩进 2 个字符
  • 边框:薪水大于 20000 的单元格边框为蓝色
  • 背景色:薪水大于 20000 的单元格背景色为绿色
  • 字体样式:薪水大于 20000 的字体粗体加横线
  • 列宽:薪水大于 20000 的列宽为 120pt
  • 行高:薪水大于 20000 的行高为 50pt
  • 新值:薪水大于 20000 的单元格内容调整为"部门编号 + 自定义字符串"

预览

保存相关设定后再预览报表:

image-20210428145758423

results matching ""

    No results matching ""