1. 概述
1.1 预期效果
如下图所示,决策报表报表块里的内容可以折叠和展开。
1.2 实现思路
超级链接传参+条件属性的方式实现报表块内容折叠或展开。
2. 示例
2.1 设计模板
1)新建决策报表,新建数据集 ds1 ,SQL 语句为:SELECT * FROM 销量
2)决策报表 body 中拖入一个报表块,里面插入一个「堆积柱形图」,并绑定图表数据,如下图所示。后面将实现这个图表的折叠和展开效果。
3)给报表添加一个模板参数d,设置其默认值为0,这个参数后面传参会用到,且默认值一定要设置,不然预览时没默认效果。
2.2 设置行高条件
图表区域右边一列合并相同高度的单元格,添加一个行高条件属性,当满足公式$d=1时,行高为0。
这个其实就是实现图表区域折叠和展开效果,参数值为 1 时,图表区域隐藏,相当于折叠起来的效果。
为了不影响图表展示,将这一列隐藏起来,如下图所示:
2.3 设置折叠传参
1)图表区域下边一行合并相同宽度的单元格,添加一个条件属性,重命名为「折叠」,添加两种属性「背景」和「超级链接」。
公式条件为$d=0,表示此时图表是展开的,因为上面设置了参数值为 1 时,图表区域行高为 0 。点击超链会改变这个状态,将图表折叠起来。
2)其中「背景」设置为向上箭头的图片,表示可以折叠起来,点击下载这张图片:折叠.png
3)其中超级链接如下图设置,链接到这个报表块本身,设置参数 d ,其值为字符串 1 。
这个不难理解,点击这个区域后,将 1 传给参数 d ,图表就折叠(隐藏)起来了。
2.4 设置展开传参
1)上面同样的格子再新增一个条件属性,重命名为「展开」,添加两种属性「背景」和「超级链接」。
公式条件为$d=1,表示此时图表是折叠起来的,因为上面设置了参数值为 1 时,图表区域行高为 0 。点击超链会改变这个状态,将图表展开。
2)其中「背景」设置为向下箭头的图片,表示可以展开,点击下载这张图片:展开.png
3)其中超级链接如下图设置,链接到这个报表块本身,设置参数 d ,其值为字符串 0 。
这个不难理解,点击这个区域后,将 0 传给参数 d ,图表就展开了。
2.5 效果预览
1)PC 端效果
保存报表,选择「分页预览」,折叠展开效果如 1.1 节中所示。
2)App 与 HTML5 效果相同,如下图所示:
3. 模板下载
已完成模板参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\SpecialSubject\HyplinkReport\超链实现报表块内容折叠和展开.frm
点击下载模板:超链实现报表块内容折叠和展开.frm