反馈已提交

网络繁忙

下拉框联动之默认选择列表中第1个值

  • 文档创建者:yets11
  • 编辑次数:19次
  • 最近更新:Catqiu 于 2021-09-15
  • 1. 概述

    1.1 版本

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

    1.2 预期效果

    通过 SQL语句实现下拉框参数联动 可以实现下拉框参数的下拉列表联动,在使用中需要使下拉框默认选择列表中的第1个值,效果如下图所示:


    1.3 实现思路

    通过给参数面板控件值赋值可以改变显示的内容,结合 SQL函数 查询出前面参数在数据库中对应值的第1个,就可以实现查询出需要的结果。

    2. 示例

    2.1 设置 area 下拉框控件

    1)打开模板%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Parameter\ParaConnection.cpt

    2)选择参数面板「地区」下拉框控件,控件值选择公式,输入公式:sql("FRDemo","SELECT 货主地区 FROM 订单 ",1,1),使报表预览时默认显示订单的「货主地区」字段的第一个地区,如下图所示:


    2.2 设置 province 下拉框控件

    选择「省份」下拉框控件,同样设置控件值为公式:if(len($area)=0,'',sql("FRDemo","SELECT 货主省份 FROM 订单 where 货主地区 = '"+$area+"'",1,1)),如下图所示:

    2021-08-11_16-58-49.png

    注1:示例模板中是采用动态 SQL 来设置「省份」下拉框控件数据字典的,也可以不采用动态 SQL 的方法,直接在数据字典设置对话框中添加公式:sql('FRDemo','SELECT 货主省份 FROM 订单 where 货主地区="'+$area+'"',1)

    注2:注意单双引号的搭配,在第一种里面,like  "%xxx"要变成 like  '%xxx'。

    2.3 设置 city 下拉框控件

    选择「城市」下拉框控件,同样设置控件值为公式:if(len($area)=0||len($province)=0,"",sql("FRDemo","SELECT 货主城市 FROM 订单 where 货主地区 = '"+$area+"' and 货主省份 = '"+$province+"'",1,1))

    2021-08-11_17-00-12.png

    注1:示例模板中是采用动态 SQL 来设置「城市」下拉框控件数据字典的,也可以不采用动态 SQL 的方法,直接在数据字典设置对话框中添加公式:if(len($area)=0||len($province)=0,'',sql('FRDemo','SELECT 货主城市 FROM 订单 where 货主地区="'+$area+'" and 货主省份="'+$province+'"',1,1))

    注2:控件值赋值的 SQL 必须和对应的控件数据字典查询一致,否则结果可能出错。

    3. 效果预览

    3.1 PC 端

    如本文 1.1 节所示。

    3.2 移动端

    App 与 HTML5 端效果相同,如下图所示:

    动画1.gif

    4. 模板下载

    已完成模板可参见:%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Parameter\ParaConnection3.cpt

    点击下载模板:ParaConnection3.cpt

    附件列表


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

    售前咨询电话

    400-811-8890转1

    在线技术支持

    在线QQ:800049425

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

    总裁办24H投诉

    热线电话:173-1278-1526

    文 档反 馈

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

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

    不再提示

    10s后关闭