条件属性实现动态列

  • 文档创建者:axing
  • 编辑次数:2次
  • 最近更新:Leo.Tsai 于 2020-06-19
  • 1. 概述

    1.1 问题描述

    动态列是指将列名作为参数,查询控件中键入列名点击查询后,报表中才显示该列,如下图所示:

    动态列.gif

    1.2 实现思路

    使用条件属性隐藏列来实现动态列效果。

    2. 示例

    2.1 准备数据

    新建普通报表,创建数据查询 ds1,SQL 语句为:SELECT * FROM 销量 where 产品='牛奶'

    image.png

    2.2 设计表格

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

    image.png

    2.3 添加控件

    1)参数面板添加一个标签控件,一个下拉复选框控件,一个查询控件。如下图所示:

    • 标签控件的控件值为字符串类型:列名:

    • 下拉复选框控件的控件名称为:列名

    image.png

    2)下拉复选框的数据字典设置如下图所示:

    image.png

    2.4 添加条件属性

    选中 A1 至 E1 单元格,添加列宽条件属性,设置当前值不包含于列名参数时,列宽为 0,如下图所示:

    Snag_10093a2b.png

    2.5 效果预览

    1)PC 端

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

    动态列.gif

    2)移动端

    1592556158880554.gif

    3. 模板下载

    已完成模板可参见:%FR_HOME%\webroot\WEB-INF\reportlets\doc\Parameter\DynamicCol\条件属性实现动态列.cpt

    点击下载模板:条件属性实现动态列.cpt

    附件列表


    主题: 参数应用
    • 有帮助
    • 没帮助
    • 只是浏览
    • 评价文档,奖励 1 ~ 100 随机 F 豆!