反馈已提交

网络繁忙

SQL语句实现下拉复选框参数联动

  • 文档创建者:文档助手1
  • 编辑次数:26次
  • 最近更新:RosieY 于 2022-10-17
  • 1. 概述

    1.1 版本

    报表服务器版本
    功能变更
    11.0--

    1.2 预期效果

    前面章节介绍了 SQL 语句实现下拉框参数联动,当参数控件为下拉复选框时,如何实现同样的联动效果呢?如下图所示,省份选项会跟随地区所选值而相应变动,城市选项会跟随地区、省份所选值相应变动。

    预览.gif

    1.3 实现思路

    可以通过 SQL() 函数实现数据之间的联动,新增数据集作为各个参数框的数据字典,在后面参数框数据集中引用前面的参数作过滤。

    2. 操作步骤

    2.1 准备数据

    新建普通报表,新建数据集 ds1 ,SQL 语句为:

    SELECT * FROM 订单 where 1=1

    ${if(len(area) == 0,"","and 货主地区 in ('" + area + "')")} 

    ${if(len(province) == 0,"","and 货主省份 in ('" + province + "')")} 

    ${if(len(city) == 0,"","and 货主城市 in ('" + city + "')")}

    ,由于参数控件为复选框,因此数据集中参数需用 in 语句,如下图所示:

    2.2 设计表格

    设计表格样式,将对应的字段拖入到对应单元格中,如下图所示:

    表格.jpg

    2.3 添加参数控件

    编辑参数面板,点击右侧控件设置上方的全部添加,生成参数控件,分别点击 areaprovincecity 参数框,选择下拉复选框控件,如下图所示:

    1.jpg

    2.4 添加参数框选项数据集

    2.4.1 地区选项

    新建数据集地区选项,SQL 语句为:select distinct 货主地区 from 订单,因为地区是第一个参数,可以任意选择,所以不需要联动过滤,此处distinct 关键字是为了去重,如下图所示:

    地区.jpg

    2.4.2 省份选项

    新建数据集省份选项,SQL 语句为:SELECT distinct 货主省份 FROM 订单 where 货主地区 in ('${area}'),因为省份需要根据地区值的不同显示相应的省份,所以需要设置 area作为过滤参数,如下图所示:

    省份.jpg

    2.4.3 城市选项

    新建数据集城市选项,SQL 语句为:SELECT distinct 货主城市 FROM 订单 where 货主地区 in ('${area}') and 货主省份 in ('${province}'),因为城市需要根据地区值、省份值的不同显示相应的城市,所以需要设置 areaprovince 作为过滤参数,如下图所示:

    城市.jpg

    2.5 设置参数控件的数据字典

    1)选中地区下拉复选框控件,控件名称为 area,设置数据字典为数据查询,数据集为地区选项,实际值和显示值都为货主地区,设置返回值类型为字符串,分隔符为','(即输入法为英文半角状态时的单引号,中间加一个逗号,此处分隔符的设置是为了将所选的多个参数值分隔开,例:当地区选择 华北、华中 时,返回值为 华北','华中 )

    注:地区、省份控件的控件名必须跟省份、城市数据集中的参数名保持一致才可以联动。

    7.png

    2)选中省份下拉复选框控件,控件名称为 province ,设置数据字典为数据查询,数据集为省份选项,实际值和显示值都为货主省份,设置返回值类型为字符串,分隔符为','(即输入法为英文半角状态时的单引号,中间加一个逗号,此处分隔符的设置是为了将所选的多个参数值分隔开,例:当地区选择 华北、华中 时,返回值为 华北','华中 )。

    8.png

    3)选中城市下拉复选框控件,控件名称为 city ,设置数据字典为数据查询,数据集为城市选项,实际值和显示值都为货主城市,设置返回值类型为字符串,分隔符为','(即输入法为英文半角状态时的单引号,中间加一个逗号,此处分隔符的设置是为了将所选的多个参数值分隔开,例:当地区选择 华北、华中 时,返回值为 华北','华中 )

    9.png

    2.6 效果预览

    2.6.1 PC端

    保存模板,点击「分页预览」,效果如下图所示:

    预览.gif

    2.6.2 移动端

    App 与 HTML 5 效果相同,如下图所示:

    移动端.gif

    3. 模板下载

    已完成模板可参见:%FR_HOME%\webroot\WEB-INF\reportlets\doc\Parameter\下拉复选框参数联动.cpt

    点击下载模板:下拉复选框参数联动.cpt

    附件列表


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

    售前咨询电话

    400-811-8890转1

    在线技术支持

    在线QQ:800049425

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

    总裁办24H投诉

    热线电话:173-1278-1526

    文 档反 馈

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

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

    不再提示

    10s后关闭

    7*24h

    智 能客 服