组内分页
所谓的组内分页,就是当分组报表一组内容大于一页时,只统计该组的分页情况,这种需求在实际应用中比较常见。集力数据系统通常默认的分页机制是计算所有数据然后分页,要想实现这种需求就必须计算出每个分组有多少条数据,每页几条数据,再分页。
下面就简单介绍实现组内分页的一种方法。
第一步:制作示例报表,如图所示:
如图所示,报表按照A3单元格里N_PRODUCT_CODE字段分组。
第二步,计算每一组的数据条数;
在F3单元格写valueat(ds1.Select(LOAN_AMT,,N_PRODUCT_CODE==A3),E3),即根据E3单元格的值返回指定的ds1.Select(LOAN_AMT,,N_PRODUCT_CODE==A3)表达式过滤的结果。
在E3和D3单元格分别写to(0+D3*30,29+D3*30)to(0,B3/30),即第三行扩展数据的条数的限制。
第三步,获取该组的分页总数;
在C3单元格写if(B3/30==0,int(B3/30),int(B3/30)+1),获取该组的总页数;
在D3单元格写to(0,B3/30),获取该组的当前页码。
最后,分组报表展现效果如下: