1. 概述
1.1 版本
报表服务器版本 | 插件版本 |
---|---|
11.0 | V1.0 |
1.2 应用场景
在用户选择下拉框时,有时需要查看字典表中的更多字段来决定选择的选项。 当前的解决方案是通过 JS实现弹窗后数据回填 来实现,虽然可以达到类似效果,但在大量场景中使用这种方案会显得繁琐且耗时较久。
本文提供了一种通过安装「关联查询控件插件」来实现该效果的方案。这种方案不仅简化了操作流程,还能大大节省时间,提高效率。如下图所示:
1.3 注意事项
1)不支持移动端。
2)不支持新前端样式。
3)不支持组件显示增强功能。
4)支持在参数面板和单元格中使用,在单元格中使用时不支持给扩展的组件赋值。
2. 插件介绍
2.1 插件安装
点击下载插件:关联查询控件插件
设计器插件安装方法参照:设计器插件管理
服务器安装插件方法参照:服务器插件管理
2.2 插件使用
插件安装完成后,新增「关联查询控件」,拖曳至「参数面板」即可新增该组件,如下图所示:
2.3 控件属性
关联查询控件插件属性与按钮控件属性基本一致,详情请参见 按钮控件。
新增功能如下所示:
配置项说明:
配置项 | 详细介绍 |
---|---|
关联主控件名 | 填写接收关联查询控件回传值的控件名称 |
关联表配置 | 绑定组件的待选择项,必须设置,否则组件不显示选项 「类型设置、数据库、模式、选择数据库表」设置可参考:数据字典 键值栏位:组件勾选后,其值传回给「联动主控件名」的栏位 参考栏位:勾选时进行参考、辅助筛选的栏位 |
支持多选 | 勾选后,关联查询控件支持选择多个选项 |
每页记录数 | 弹出框每页显示的列数,预设为 10 |
弹出框高度 弹出框宽度 | 弹出框的高度和宽度,高度预设为 500px,宽度预设为 750px |
返回字符串 | 是否以字符串形式将值传回给关联主控件 |
3. 示例
3.1 示例场景说明
我们需要查询某个客户的订单详情,并希望在查询程序中识别同一客户在相近时间段内的多笔订单。
为此,我们可以通过设置关联查询控件插件,利用「客户ID」和「订购时间」等字段,来筛选出所需的「订单ID」。
3.2 数据准备
添加如下数据集:
订单:SELECT * FROM S订单
订单&明细:SELECT * FROM S订单,S订单明细 WHERE S订单.订单ID=S订单明细.订单ID ${if(len(ID) == 0,"","and S订单.订单ID in ('" + ID + "')")}
3.3 报表设计
3.3.1 添加参数面板组件
设计参数面板如下图所示:
1)关联查询控件的按钮设置如下所示:
2)下拉复选框名称设置为ID,返回值类型选择字符串,分隔符设置为',',如下图所示:
3)其他控件设置此处不过多赘述。
3.3.2 设计报表主体
将对应栏位拖入单元格A2~D2,如下图所示:
3.4 效果查看
点击「报表预览」,效果如下所示:
4. 模板下载
点击下载模板:关联查询控件插件.cpt