供应链报表常用过滤二开案例

变更记录
| 产品版本 | 更新内容 | 更新日期 |
| V5.0 | 初始版本 | 2023年4月27日 |
一、概要介绍
报表添加常用过滤本文以即时库存为例,查询时能根据常用过滤面板的过滤条件进行查询过滤:

二、实现步骤
1. 元数据添加作为过滤条件的字段

2.代码处理逻辑
2.1 扩展点简介
基于极速报表框架的插件大致分为三类:
表单插件:即标准报表(旧报表)的表单插件。表单插件可处理过滤面板的控制等逻辑;
查询插件:即标准报表(旧报表)的查询插件,查询插件可处理报表查询时的取数等逻辑;
基于极速报表框架的报表还有一个扩展点插件,即在报表数据源配置中配置的Handle插件:

极速报表框架基于平台的报表框架做了封装,查询取数的逻辑还是在查询插件中处理,方法入口仍然是查询插件的query方法,在查询插件运行过程中会调用对应Handle插件的方法进行扩展。
扩展点Handle插件的接口定义如下:
public interface IReportDataHandle {
/**
* 数据查询前,进行上下文设置
* @param ctx
*/
default void setupCtx(ReportDataCtx ctx) {
}
/**
* 修改数据块:增、删、改
* @param blocks
* @param ctx
* @return
*/
default void modifyBlocks(List<SrcBlockConf> blockCollector,ReportDataCtx ctx) {
}
/**
* 在多个数据块作为Union All后,执行的数据转换器
* @param ctx
* @return
*/
default void transFormAfterUnion(List<IDataXTransform> transCollector,ReportDataCtx ctx){
}
/**
* 在执行group前设置group方案,或者其他上下文设置
* @param ctx
*/
default void beforeGroupData(ReportDataCtx ctx){
}
/**
* 在group完之后,执行的数据转换器
* @param ctx
* @return
*/
default void transFormAfterGroup(List<IDataXTransform> transCollector,ReportDataCtx ctx){
}
/**
* 在添加汇总行前设置汇总方案,或者其他上下文设置
* @param ctx
*/
default void beforeAddSumRow(ReportDataCtx ctx){
}
/**
* 在添加完汇总行完之后,执行的数据转换器
* @param ctx
* @return
*/
default void transFormAfterAddSumRow(List<IDataXTransform> transCollector,ReportDataCtx ctx){
}
/**
* 生成最终数据包后,执行的数据转换器
* @param ctx
* @return
*/
default void transformResult(List<IDataTransform> transCollector,ReportDataCtx ctx){
}
/**
* 构建显示列
* @param cols
* @param ctx
* @return
*/
default List<AbstractReportColumn> buildShowColumn(List<AbstractReportColumn> cols, ReportDataCtx ctx){
供应链报表常用过滤二开案例
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



