介绍:钻取是指沿着层次结构,进入展现不同数据的其他维度,变换分析数据的粒度。钻取分为下钻(Drill-down)和上钻(Drill-up)
> 下钻是沿着数据的维度向下,在更小的粒度上查看更详细的数据。积木报表目前支持根据不同条件,跳转至不同报表并传递参数。下面就让我们来看一下如何实现报表根据条件进行钻取吧。
[TOC]
# 报表条件钻取
## 钻取效果
> 示例:点击 教师名字 根据不同条件跳转到不同的报表
跳转条件如下:
* `当教师年龄大于32的时候跳转至学生信息报表`
* `当教师年龄等于32的时候跳转到班级信息报表`

## 配置步骤如下
### 1.设计一个数据报表,名字叫`教师报表`
> 创建一个教师表,有三个字段:教师ID、教师名称、教师年龄

#### 1.1 给`教师报表`创建SQL数据源
创建一个sql的数据集,查询教师信息 ,设置编码为`teacher`,名称为教师信息

#### 1.2 拖拽字段到设计器页面并设置样式

预览效果

### 2\. 再设计一个数据报表`班级报表`
> 创建一个班级表,有四个字段:班级ID、教师ID、班级名称、总人数

#### 3.1 添加班级数据源
根据老师ID`teacherId`,查询老师名下负责的班级表信息 ,设置编码为`class`,名称为班级信息
重点说明:此报表有参数,参数规则可以参考[SQL数据源报表带参制作](http://report.jeecg.com/2020090)

#### 3.2 拖拽字段到设计器页面并设置样式

预览效果

### 4.最后再设计一个数据报表`学生报表`
> 创建一个学生表,主要有四个字段:学生ID、学生名称、学生性别、教师ID

#### 4.1 添加学生数据源
根据老师ID`teacherId`查询老师负责的学生表信息,编码为`student`,名称为学生信息
重点说明:此报表有参数,参数规则可以参考[SQL数据源报表带参制作](http://report.jeecg.com/2020090)

#### 4.2 拖拽字段到设计器页面并设置样式

预览效果

### 5.重点来了,如何实现钻取的关键-> 添加超级链接
#### 5.1 给`教师报表`的字段`#{teacher.name}`添加钻取超链接
> 创建两个报表`钻取超链接`并赋予条件,让它们分别钻取到`学生信息报表`和`班级信息报表`

##### 5.1.1 给`教师报表`的字段`#{teacher.name}`添加钻取链接,名称为`钻取到学生信息`
* 链接名称:填写此链接名称`不重要-随意填写`
* 链接报表:选择此链接需要跳转的报表 —`“学生信息”`
* 弹出方式:选择弹出方式;支持新窗口打开和当前窗口打开
* 条件:满足时才会跳转到报表—当教师年龄(`age`)大于32的时候才会跳转到学生信息
参数设置说明:
> 点击`“教师名称”`通过`“教师编号”`跳转至下级钻取报表`“学生信息”`。
> 原始参数值可使用下拉框选择数据集字段;学生信息映射参数使用下拉框选择字段的方式;
* 原始参数—“id”为`“教师信息”`中的教师`id`
* 映射参数—“teacherId”为传至`“学生信息”`中的参数`teacherId`

##### 5.1.2 再为`#{teacher.name}`添加第二个报表钻取超链接,名称为`钻取到班级信息`
参数配置说明
> 原始参数值也可以采用表达式=B1或=B方式;如我们想要将`teacherId`传递过去,那么就可以写`teacherId`所对应的列=B;

设计好后直接保存预览

## 附录
#### 1、钻取条件赋值规则
详见[钻取联动条件规则](http://report.jeecg.com/2665167)
- 安装步骤
- 1.nacos配置文件
- 2.容器部署
- 3. 初始化数据库
- 操作手册
- 一、基础操作
- 1. 鉴权
- 2. 创建报表
- 3. 编辑报表
- 4. 背景设置
- 5. 复制、粘贴、剪切
- 6. 行操作
- 7. 添加数据源
- 8. 报表数据集
- 8.1 SQL数据集配置
- 8.2 API数据集配置
- 8.3 JavaBean数据集
- 8.4 对象数据集配置
- 8.5 集合数据集配置
- 8.6 JSON数据集配置
- 8.7 sql数据源解析失败弹窗
- 8.8 存储过程
- 8.9 Redis数据集
- 8.10 MongoDB数据集
- 9. 插入数据
- 10. 数据格式化设置
- 11. 数据字典配置
- 12. 导入报表
- 13. 导出报表
- 14. 分页设置
- 15. 报表集成
- 16. 分享报表
- 17.报表模版库
- 18.数据源查询默认值配置
- 19.自定义分页条数
- 20.报表定时保存配置
- 21.补全空白行
- 22.预览页工具条设置
- 23.动态合并格
- 二、打印设计
- 1.打印设置规则_重要
- 2. 打印区域设置
- 3. 打印清晰度设置
- 4. 打印机样式设置
- 5. 套打怎样设置
- 6. 带背景打印
- 三、数据报表设计
- 1. 分组
- 1.1 纵向分组(相邻合并)
- 1.2 横向分组(相邻合并)
- 1.3 横向动态列分组
- 1.4 横向纵向组合动态列分组
- 1.5 横向分组小计
- 1.6 分组内合计
- 1.7 纵向分组小计
- 1.8 常用分组示例
- 1.9 分组数据排序设置
- 2.查询条件
- 2.1 API查询条件配置
- 2.2 API查询条件为时间
- 2.3 API自定义查询条件
- 2.4 SQL配置查询条件
- 2.5 API接口后台接收参数说明
- 2.6 API范围查询
- 3.条形码/二维码
- 3.1 二维码配置说明
- 3.2 条形码配置说明
- 3.3 条形码和二维码改值
- 4.交叉报表
- 5.明细报表
- 6.主子报表
- 6.1 主子表API数据源(新)
- 6.2 主子表SQL数据源(新)
- 7.联动钻取
- 7.1 报表联动(新)
- 7.2 报表钻取(新)
- 7.3 报表钻取带条件用法
- 7.4 图表钻取带条件用法
- 7.5 报表联动图表带条件用法
- 7.6 图表联动图表带条件用法
- 7.7 钻取联动条件规则
- 8.组件交互清单
- 9.循环块设置
- 10.分栏设置
- 11.分版设置
- 12.多表头复杂报表
- 四、表达式函数
- 1. 数据集表达式
- 2. 单元格表达式
- 3. 统计函数
- 4. 行号函数
- 5. 日期函数
- 6. 数学函数
- 7. 字符串函数
- 8. 条件表达式
- 9. 颜色表达式
- 10. 判断函数
- 11. 函数库列表(高级)
- 12. 基本运算符(高级)
- 13. 自定义报表函数
- 五、报表查询配置
- 1. 报表参数配置
- 2. 报表查询配置
- 3. 查询控件类型
- 4. 查询控件默认值
- 5. 时间控件设置说明
- 6. 时间控件默认值设置
- 7. SQL中条件表达式
- 8. 查询控件下拉树
- 9. 范围查询设置默认值
- 10. JS增强和CSS增强
- 11. 技巧说明
- 12. 参数公用示例
- 六、图形报表设计
- 1. 基本配置
- 1.1 图表背景设置
- 1.2 图表动态刷新
- 1.3 图表之间的联动
- 2. 柱形图配置
- 2.1 数据源配置
- 2.1.1 单数据源配置
- 2.1.2 多数据源配置
- 3. 折线图配置
- 3.1 数据源配置
- 3.1.1 单数据源配置
- 3.1.2 多数据源配置
- 4. 饼图配置
- 4.1 数据源配置
- 5. 折柱图配置
- 5.1 数据源配置
- 6. 散点图配置
- 6.1 普通散点图数据源配置
- 6.2 气泡散点图数据源配置
- 7. 漏斗图配置
- 7.1 数据源配置
- 8. 象形图配置
- 8.1 数据源配置
- 9. 地图配置
- 9.1 地图区配置
- 9.2 数据源配置
- 10. 仪表盘配置
- 10.1 数据源配置
- 11. 雷达图配置
- 11.1 数据源配置
- 12. 关系图配置
- 12.1 数据源配置
- 七、其他
- 1. sql数据集 in查询
- 2. 联动/钻取配置说明
- 3. 数据集字段字典配置
- 4. 传参渲染到报表上
- 5. 钻取、联动条件用法
- 6. 导出图片支持背景导出
- 7. 模板示例补充表
- 快速入门
- 1. 整体页面布局介绍
- 2. SQL数据源报表制作
- 3. SQL数据源报表带参制作
- 4. API数据源报表制作
- 5. API数据源报表带参制作
- JDEasyWorkflow
