历史版本2 :使用公式实现动态行列互转表 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 预期效果

用以实现动态筛选选择数据集所需展示的列,如下图所示: 

动态表维度筛选.gif


1.2 实现思路

使用数据集函数实现动态行列互转,进行行列维度的筛选互转

2. 示例编辑

2.1 模板设计

    1.新建报表,添加数据集ds1:select * from 订单

 1.png


 2.参数栏页面拖入两个lable控件和两个下拉框控件,如果所示

   2.1)将对应行的下拉框控件的控件名称修改为H,同时设置数据字典,维度名称对应为数据集ds1所查询出的字段名

  2.png

  2.2)修改对应列的控件名称为Z,同时设置数据字典

3.png


2.2 页面设计

1.B1单元格设置公式: ds1.group($H, ,TRUE) ,同时单元格设置横向扩展

4.png

2.在A2单元格设置公式:ds1.group($Z, ,TRUE),设置扩展方向为纵向

5.png

3.在B2单元格设置公式: EVAL("SUM(ds1.select(应付金额," + $H + "=B1 && " + $Z + "=A2 ))")  

  查询对应行列维度的应收金额

  6.png


保存预览


2.3 效果预览

效果预览如概述所示

 3. 模板下载编辑