电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

寻源二开指南 自定义扩展过滤

来源:金蝶云社区作者:金蝶2024-09-225

寻源二开指南 自定义扩展过滤

1. 自定义扩展过滤

1.1    业务场景简介

寻源管理的各种基础资料,一般会预置适用范围过滤,如“组件模板配置”,可以按“寻源方式”进行过滤。如果二开需要增加新的适用范围过滤,如:采购组织、品类等,可通过自定义扩展过滤来实现。

 

1.2    简要实现方案

步骤

开发内容

备注

1

自定义扩展过滤元数据

元数据开发

2

注册扩展过滤方案

应用配置

3

应用扩展过滤

代码开发

 

1.3    详细开发步骤及示例代码

下面以新增“组件模板配置过滤” 为例。

1.3.1  增加自定义扩展过滤元数据

1、继承基类:自定义扩展过滤基类  pds_extfilter_tpl

2、增加元数据:组件模板配置过滤(pds_tplconfig_extfilter

 

3、增加适用范围:如 组织、品类

 

1.3.2  注册扩展过滤

1、新增扩展过滤:

1)编码:一般同元数据,必需唯一与调用扩展过滤的代码中的编码 保持一致

2)待过滤的业务对象:组件模板配置过滤

3)返回业务对象的那个字段值:组件模板配置,为空时返回id

4)值字段的业务对象:与调用扩展过滤的代码中传入的业务对象 保持一致

5)排序方式:一般按匹配字段数(倒序)、编码(顺序)

 

2、过滤条件:

1)通用过滤条件:待过滤业务对象的基本属性筛选,比如数据状态、可用状态等,固定的筛选条件。

2)动态过滤条件:待过滤业务对象的数据,与值对象的数据,进行动态匹配。

3)插件过滤条件:一些无法通过配置实现的特殊过滤,如品类。品类是在采购清单分录中,不是在项目启动单上,无法简单匹配,需要写插件。


实例代码如下:

public class   WinruleFilterByScourceType1 implements   IExtFilterPlugin<ExtFilterContext> {

          private static final long   serialVersionUID = 1L;

 

          @Override

          public Map<String, Object>   getQFilter(ExtFilterContext context) {

                    // 从上下文 获取 寻源方式id

                    long sourceTypeId =   ExtFilterUtils.getSourceTypeIdFromContext(context);

                    if (sourceTypeId == 0) {

                               return null;

                    }

                    QFilter qfilter = null;

                  

寻源二开指南 自定义扩展过滤

1. 自定义扩展过滤1.1 业务场景简介寻源管理的各种基础资料,一般会预置适用范围过滤,如“组件模板配置”,可以按“寻源方式”进行过...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

已经是第一篇
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信