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

如何开发自定义比较符

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

如何开发自定义比较符

关键词:自定义比较符,过滤


一、需求

自定义比较符开发

(1)日期字段,过滤今年的数据

(2)基础资料字段,过滤某个特征值

(3)组织字段,过滤上级组织和同级组织

(4)单据转换中使用自定义比较符脚本



二、思路与方案

苍穹5.0以及之前的版本在【配置工具】可以创建自定义比较符(苍穹6.0的版本,是在【公共设置】里面)。同时,编写代码,构造QFilter对象,完成数据过滤。

单据转换时,会调用自定义比较符插件(继承AbstractFilterContantParser)的getScriptFilter方法,需要重写这个方法。


三、实现过程

1.日期字段,过滤今年的数据

创建自定义比较符如下图,有几个需要注意的地方:

适用类型,指的是控件类型,创建了比较符之后,还需要在设计器中,选中控件节点,添加这个自定义比较符才会生效。

应用,只有应用中的页面,才能使用这个自定义比较符。

解析类,派生自AbstractFilterContantParser,通过java代码实现自定义比较符的业务逻辑。


苍穹5.0以及之前的版本,是在【配置工具】中添加自定义比较符。

image.webp


苍穹6.0的版本,是在【公共设置】中添加自定义比较符。




ThisYearFilterContantParser这个类的类路径,要填在在自定义比较符的解析类上。

解析类插件代码如下:

package kdec.customfilter;
import com.kingdee.guard.service.checkrule.QCP;
import kd.bos.entity.filter.AbstractFilterContantParser;
import kd.bos.entity.filter.FilterContantParserArgs;
import kd.bos.orm.query.QFilter;

import java.util.Calendar;

/**
 * 自定义比较符:今年
 */
public class ThisYearFilterContantParser extends AbstractFilterContantParser {

    @Override
    protected QFilter getQFilter(FilterContantParserArgs filterContantParserArgs) {
        String fieldName = filterContantParserArgs.getFieldName();

        // 构建今年第一天的calendar对象
        Calendar calendar = Calendar.getInstance();
        calendar.set(Calendar.DAY_OF_YEAR, 1);
   

如何开发自定义比较符

关键词:自定义比较符,过滤一、需求自定义比较符开发(1)日期字段,过滤今年的数据(2)基础资料字段,过滤某个特征值(3)组织字段,过...
点击下载文档文档为doc格式

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

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