beforeBuildRowCondition事件

1 事件介绍
插件可以在此事件,忽略转换规则上配置的条件,改用插件定制条件,或者追加插件定制条件。
2 事件触发时机
编译转换规则 - 数据范围,配置的源单数据筛选条件之前,触发此事件。
3 代码模板
package kd.bos.plugin.sample.bill.billconvert.template;
import kd.bos.entity.botp.plugin.AbstractConvertPlugIn;
import kd.bos.entity.botp.plugin.args.BeforeBuildRowConditionEventArgs;
public class BeforeBuildRowCondition extends AbstractConvertPlugIn {
@Override
public void beforeBuildRowCondition(BeforeBuildRowConditionEventArgs e) {
// TODO 在此添加业务逻辑
}
}4 参数说明
public class BeforeBuildRowConditionEventArgs extends ConvertPluginEventArgs
public void setIgnoreRuleFilterPolicy(boolean ignoreRuleFilterPolicy):完全忽略转换规则上的数据范围;
public List<QFilter> getCustQFilters():插件定制条件,用于数据库取数;
public void setCustFilterExpression(String custFilterExpression):插件定制条件表达式,用于内存运算;条件含义需要与CustQFilters一致,系统会分别用于不同的时机点;
public void setCustFilterDesc(String custFilterDesc):插件定制条件描述,当源单数据行,不符合此条件时,系统会把这段条件描述,提示给用户,告诉用户数据行不允许下推的原因。
5 应用示例
5.1 案例说明
1. 单据下推,需要根据系统选项,动态增加数据筛选条件:
如果勾选了"锁定的订单不允许下推"选项,则不能下推锁定状态为已锁定(B)的单据;
如果没有勾选此选项,则不做此限制。
5.2 实现方案
1. 捕捉 beforeBuildRowCondition 事件,读取选项值;
2. 如果勾选了选项,则追加数据行筛选条件,只允许下推未锁定的单据。
5.3 实例代码
package kd.bos.plugin.sample.bill.billconvert.bizcase; import kd.bos.entity.botp.plugin.AbstractConvertPlugIn; import kd.bos.entity.botp.plugin.args.BeforeBuildRowConditionEventArgs; import kd.bos.orm.query.QCP; import kd.bos.o
beforeBuildRowCondition事件
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



