历史版本12 :下拉框模糊搜索精确匹配方案 返回文档
编辑时间:
内容长度:图片数:目录数:
修改原因:
1. 概述编辑
1.1 版本
报表服务器版本 | 功能变更 |
---|---|
11.0 | -- |
1.2 问题描述
目前下拉框控件自带的模糊查询功能,在匹配的时候会将多个字符拆开来进行匹配。例如输入 ABC ,则会匹配数据字典中同时有 A、B、C 且顺序一致的数据,而不是匹配 ABC 连在一起的数据。那么要怎么实现精确一些的模糊搜索呢?
1.3 实现思路
数据库的 like 语句是可以实现精确的模糊搜索功能的,那就可以利用控件数据字典联动的方式来实现需求。
注:新参数样式不支持此方法。
2. 示例编辑
2.1 数据准备
1)新建数据集 ds1,数据库查询语句为:SELECT * FROM S客户 WHERE 客户ID like '%${abc}%',如下图所示:
2)新建数据集 ds2,数据库查询语句为:SELECT * FROM S客户,如下图所示:
2.2 报表设计
1)在参数面板拖入 2 个标签控件和 2 个下拉框控件,给第一个下拉框控件设置控件名称为abc,第一个标签控件名称为模糊查询结果,给第二个下标签控件名称为下拉框自带模糊查询结果,如下图所示:
2)下拉框数据字典分别设置为 ds1 和 ds2 ,实际值和显示值都绑定客户 ID 字段,如下图所示:
3)下拉框控件均勾选允许直接编辑,允许自定义值,如下图所示:
2.3 效果预览
2.3.1 PC 端
保存报表,点击分页预览,在第一个下拉框控件中输入 BL ,查询出结果为 BLAUS、BLONP ,在第二个下拉框控件中输入 BL ,查询出结果为BLAUS、BLONP、BOLID,如下图所示:
2.3.2 移动端
App 与 HTML5 端效果相同,如下图所示:
3. 模板下载编辑
已完成模板可参见:%FR_HOME%\webroot\WEB-INF\reportlets\doc\Parameter\下拉框模糊搜索精确匹配方案.cpt
点击下载模板:下拉框模糊搜索精确匹配方案.cpt