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

编辑
  • 文档创建者:yets11
  • 浏览次数:18244次
  • 编辑次数:15次
  • 最近更新:Kevin-s 于 2019-10-21
  • 1. 描述

    通过 下拉框参数联动 可以实现下拉框参数的下拉列表联动,效果如下图所示:

    222

    2. 思路

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

    3. 示例

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

    2)选择参数面板「地区」下拉框控件,控件值选择公式,输入公式:sql('FRDemo','SELECT 货主地区 FROM 订单 ',1,1)

    注:表示报表预览时默认显示订单的「货主地区」字段的第一个地区。

    222

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

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

    1.jpg

    注2:这里需要用到 if 函数,对前面的地区参数进行判断,当地区参数为空时,不做查询。

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

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

    注1:示例模板中是采用动态 SQL 来设置「城市」下拉框控件数据字典的,也可以不采用动态 SQL 的方法,直接在数据字典设置对话框中添加公式:

    if(len($area)=0||len($province)=0,'',sql('FRDemo','SELECT 货主城市 FROM 订单 where 货主地区="'+$area+'" and 货主省份="'+$province+'"',1,1))

    2.jpg

    注2:这里需要用到 if 函数,对前面的地区和省份参数都进行判断,当地区参数和省份参数有一个为空时,不做查询。

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

    4. 效果预览

    报表预览效果如描述中所示。

    5. 已完成模板

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

    点击下载模板:ParaConnection3.cpt







    附件列表


    主题: 设计思路
    标签: 暂无标签
    如果您认为本文档还有待完善,请编辑

    文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
    关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
    若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201