反馈已提交

网络繁忙

下拉框控件值首尾含有空白符也能实现查询

  • 文档创建者:Catqiu
  • 编辑次数:2次
  • 最近更新:RosieY 于 2023-01-13
  • 1. 概述

    1.1 问题描述

    拉框控件是常用的查询控件之一,实际使用中有一种场景,从某处复制了一个收货地址,然后粘贴到下拉框进行查询,但是这种复制来的地址里面有时候会含有空白符(包括:空格、制表符 tab、换行符等)

    例如:当中复制过来的一个地址里面就含有Tab空白符【       黄岛区新技术开发区 65 号】,但是粘贴到下拉框中后Tab在文字的最前面被挡住了,部分用户不知道自己复制了含Tab的文字点击查询,结果是查询为空。

    1.2 实现思路

    1)通过编写SQL语句实现查询。

    2)为查询控件添加点击事件,添加JS代码实现查询。

    2. 示例一

    2.1 数据准备

    建立数据集,输入SQL语句如下,将数据集命名为ds1,如下图所示:

    SELECT * FROM 订单 

    where 1=1

    ${if(len(订单ID)==0,"","and 订单ID LIKE '%"+ trim(订单ID)+ "%'")}

    ${if(len(货主地址)==0,"","and 货主地址 LIKE '%"+ trim(货主地址)+ "%'")}

    公式注释:

    • ${if(len(订单ID)==0,"","and 订单ID LIKE '%"+ trim(订单ID)+ "%'")}和${if(len(货主地址)==0,"","and 货主地址 LIKE '%"+ trim(货主地址)+ "%'")}主要是为了实现模糊查询功能。

    • trim()用于删除字符串的头尾空白符,空白符包括:空格、制表符 tab、换行符等,并且trim() 不会改变原始字符串,不会删除原有文字内部的空白符。

    2.2 报表设计

    如下图所示:

    2.3 参数面板设计

    1)将参数添加至参数面板,控件选择为下拉框控件,如下图所示:

    2)为订单ID的下拉框控件绑定数据字典,如下图所示:

    2022-11-10_14-25-28.png

    3)为货主地区的下拉框控件绑定数据字典,如下图所示:

    2022-11-10_14-25-28.png

    2.4 效果预览

    保存报表,选中分页预览,如下图所示:

    注:不支持移动端。

    3. 示例二

    3.1 数据准备

     建立数据集,输入SQL语句如下,将数据集命名为ds2:

    SELECT * FROM 订单 

    where 1=1

    ${if(len(订单ID)==0,"","and 订单ID LIKE '%"+ 订单ID+ "%'")}

    ${if(len(货主地址)==0,"","and 货主地址 LIKE '%"+ 货主地址+ "%'")}

    3.2 报表设计

    与 2.2 节一致。

    3.3 参数面板设计

    1)与 2.3 节相同。

    2)选择查询按钮,添加点击事件,如下图所示:

    企业微信截图_1668063594470.png

    3.4 效果预览

    与 2.4 节一致。

    4. 模板下载

    已完成模板可参见:

    %FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\JS\参数界面JS实例\SQL下拉框控件值首尾含有空白符也能实现查询.cpt

    %FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\JS\参数界面JS实例\JS下拉框控件值首尾含有空白符也能实现查询.cpt

    点击下载模板:

    JS下拉框控件值首尾含有空白符也能实现查询.cpt

    SQL下拉框控件值首尾含有空白符也能实现查询.cpt


    附件列表


    主题: 参数应用
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

    热线电话:400-811-8890转2

    总裁办24H投诉

    热线电话:173-1278-1526

    文 档反 馈

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭