单据如何被引用-如何在基础资料控件引用单据原创
金蝶云社区-技术支持与赋能部_ZH
技术支持与赋能部_ZH
12人赞赏了该文章 4493次浏览 未经作者许可,禁止转载编辑于2022年04月15日 13:42:34

关键词:单据、被引用

一、需求背景

选择的表单是单据类型的,无法在基础资料控件中使用

二、思路与方案

目前基础资料可以被别的业务对象引用,因为业务对象可以增加基础资料这个控件,然后绑定某个具体基础资料。所以考虑新增一个基础资料代替单据被引用,基础资料的字段和表名和要被引用单据保持一致。

三、实现过程

1、新建一个基础资料表名、字段名与单据中表名、字段名一样的方案来实现此效果。

 

12.png

13.png

2、源单据新增四个字段

status   文本  默认值  C(等于基础资料数据状态字段)

enable  文本  默认值  1(等于基础资料使用状态字段)

name   多语言文本

number 文本 (等于基础资料编码字段)

14.png


3、配置单据编码规则

4、在单据提交方法中增加同步编码的插件(这一步是为了给基础资料number赋值)

15.png

public class DownLoadOperationPlugin extends AbstractOperationServicePlugIn {
         @Override
         public void beginOperationTransaction(BeginOperationTransactionArgs e) {
                             List<DynamicObject> list=new ArrayList();
                             //从billno同步到number
                             for(DynamicObject obj :e.getDataEntities()) {
                                      obj.set("number", obj.get("billno"));
                                      list.add(obj);
                             }
                             e.setDataEntities(list.toArray(new DynamicObject[list.size()]));
         }
}



5、基础资料添加一个字段

billstatus  文本(等于源单据的单据状态,第三方单据引用此基础资料时,过滤billstatus=“C”的数据,代表已审核避免任意状态的单据都会被看到)

四、实现效果

16.png

17.png


五、开发环境版本­­­­

4.0.012.0

六、参考资料

【开发平台】指导手册

学习成长中心


赞 12