历史版本4 :条件属性实现动态列 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

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

1.2 预期效果

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

动态列.gif

1.3 实现思路

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

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 端

保存报表,点击分页预览,效果如 1.2 节所示。

2)移动端

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

1592556158880554.gif

3. 模板下载编辑

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

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