历史版本9 :下拉树控件默认全选 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 预期效果

下拉树选择参数时,希望默认全选,下拉树中显示“选中”状态,且默认值返回完整的节点路径。效果如下图所示:

222

1.2 实现思路

通过属性>控件值,默认勾选全部下拉参数。

实现思路.png

2.示例编辑

2.1 准备数据

数据集 ds1,查询出所有地区,SQL 语句为:SELECT 货主地区 FROM 订单 where 货主地区!=""

DS1.png

数据集 ds2,根据第一层 layer1 的值查询出省份,SQL 语句为:SELECT  货主省份 FROM 订单 where 货主省份!="" and 货主地区='${layer1}'

DS2.png

数据集 ds3,根据前两层 layer1、layer2 的值查询出城市,SQL 语句为:SELECT  货主城市 FROM 订单 where 货主城市!="" and 货主地区 = '${layer1}'and 货主省份='${layer2}'

DS3.png

注:这里是通过 layer1、layer2 来引用,以此类推。其中 layer1,layer2 等均是预定义好的,不可更改。

2.2 设计报表

1)参数面板拖入下拉树控件

参数面板.png

2)选择属性表>高级>数据字典,构建方式选择普通分层构建,选择每层对应的数据集。

层次1:

1600236998163552.png

层次2:

1600237024803001.png

层次3:

1600237040921111.png

3)设置属性>高级>多选,高级>结果返回叶子节点,高级>结果返回完整层次路径。

属性设置.png

4)属性表>高级>控件值,选择公式,弹出公式定义对话框,输入公式:EVAL("["+JOINARRAY(sql("FRDemo", "select '['||''''||货主地区||''''||','||''''||货主省份||''''||','||''''||货主城市||''''||']' from 订单", 1), ",")+"]")

实现思路.png

注:EVAL() 返回表达式计算后的结果。用 joinarray 函数将数组转换为字符串。sql() 中查询订单中的货主地区,货主省份和货主城市。

2.3 效果预览

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

注:该方法不支持移动端。

下拉框效果展示.png

3. 模板下载编辑

已完成模板:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Parameter\下拉树控件默认全选.cpt

点击下载模板:下拉树控件默认全选.cpt