报表界面如何实现表格字段分组下只嵌套一个分组字段显示原创
2人赞赏了该文章
1,331次浏览
编辑于2022年09月01日 10:26:43
一、需求
报表列表中如何实现如下图所示的样式如图1.1
图1.1
二、思路与方案
目前报表列表中默认的是不支持分组下面嵌套一个分组,如果只有一个分组会不显示分组,只显示一层分组,要实现上图所示的效果,需要通过插件去干预,AbstractReportListDataPlugin中getColumns中会获取到分组字段、字段等,字段中可以有一个属性设置是否显示单列
三、实现过程
3.1、首先根据报表模板创建模板页面,绑定数据源如图3.1所示
图3.1
3.2、编写插件,将插件注册到页面如下
public class TestQueryPlugin extends AbstractReportListDataPlugin { @Override public DataSet query(ReportQueryParam reportQueryParam, Object o) throws Throwable { DataSet dataSet= QueryServiceHelper.queryDataSet(this.getClass().getName(),"kdec_bill0708_1","billstatus,billno",null,null); return dataSet; } @Override public List<AbstractReportColumn> getColumns(List<AbstractReportColumn> columns) throws Throwable { for (int i=0;i<columns.size();i++){ ReportColumnGroup reportColumn= (ReportColumnGroup) columns.get(i); List<AbstractReportColumn> columnList=reportColumn.getChildren(); for(int j=0;j<columnList.size();j++){ columnList.get(j).setHideSingleColumnRow(false); } } return super.getColumns(columns); } }
四、实现的效果
预览界面,点击查询后效果如下图所示4.1
图4.1
赞 2
2人点赞
还没有人点赞,快来当第一个点赞的人吧!
打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!
推荐阅读