反馈已提交

网络繁忙

下拉框显示多列

  • 文档创建者:lu123
  • 编辑次数:17次
  • 最近更新:RosieY 于 2022-09-23
  • 1. 概述

    1.1 版本

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

    1.2 预期效果

    用户点击下拉框控件在下拉列表中进行选择时,往往是具有目的性的选择,所以下拉框中弹出来的记录越完整,越便于用户使用下拉框控件来选择数据。

    如下图所示,点击学号下拉框,下拉列表中同时显示学号、班级、学生姓名。

    13.png

    1.3 实现思路

    通过 value 公式定义选取要展示的列,然后将要展示的列合并起来,放在下拉框的显示值中。

    2. 操作步骤

    2.1 模板准备

    1)在 FineReport 设计器中点击「文件>新建普通报表」,添加数据集 ds1 ,SQL 语句为:SELECT * FROM STSCORE

    2)模板如下图所示:

    10.png

    2.2 增加参数

    点击「模板>模板参数」,添加参数「std」,点击「确定」。如下图所示:

    1598432248248745.png

    2.3 设置控件

    在参数面板中添加「下拉框控件」和「查询控件」,下拉框控件的组件名称为「std」。为下拉框控件设置数据字典,类型设置选择「数据查询」,数据集为「ds1」,实际值为「STUDENTNO」,显示值用公式表示为:$$$ + " "+ VALUE("ds1",1,2,$$$,1)+" "+ VALUE("ds1",3,2,$$$,1),如下图所示:

    11.png

    注:value 函数具体介绍请参见:Value函数使用介绍

    公式说明:

    • $$$ :当前单元格的实际值。

    • VALUE("ds1",1,2,$$$,1):返回 ds1 中第 1 列中的元素,这些元素对应的第 2 列的值为 $$$。

    • VALUE("ds1",3,2,$$$,1):返回 ds1 中第 3 列中的元素,这些元素对应的第 2 列的值为 $$$。 

    最后一个参数说明:值小于 0 时,会取数组的第一个值,值大于数组长度时,会取数组的最后一个值,最后将这些结果拼接成字符串。

    2.4 添加过滤条件

    双击 A2 单元格,点击过滤,可选列为「STUDENTNO」,「STUDENTNO」列等于参数「$std」,如下图所示:

    12.png

    2.5 效果查看

    保存模板,点击「分页预览」,PC 端效果与本文 1.1 节预期效果相同。

    App 及 HTML5 效果如下图所示:

    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后关闭