主数据DEP扩展字段同步到下级组织二开实践案例
一、业务场景
此功能为主数据(客户、供应商、物料) 同步下级功能的扩展,可以通过dep扩展字段进行下级同步
用户通过基础资料将辅助资料分配到下级组织,后需要对该基础资料对应的辅助资料进行统一修改,目前是需要先将辅助资料进行反分配,修改上级辅助资料后再进行分配到下级组织,此过程较为繁琐且分配与反分配有大量的插入语句和校验功能,耗时较大,因此同步下级辅助资料功能由此诞生。 但是如果需要同步二开字段,还需要做一些配置,本文章可以学习到二开字段或者DEP扩展字段如何添加到同步下级列表中,进行二开字段同步。
二、操作步骤
1、配置DEP字段
打开动态扩展平台高级版,导入方案,导入实体,在对应的实体中添加字段
在财务资料(此处以客户财务资料为例)编辑界面添加控件,并绑定实体的字段
保存并启用方案,建议重新启用一下客户端看字段是否生效。
2、配置XML字段
节点:entitymodel--》properties--》增加propertymodel节点,如下图
3、重启服务器,既可在同步界面中看到扩展的dep字段
三、详细设计
设计流程图:
各部分内容说明:
1、用户打开同步界面,xml解析成实体的集合装载数据,用户可根据需求选择实体和字段进行同步 每个执行器对应一种类型的实体,例如ModelExecutor4CusControllerBean,主要用于获取和选择策略类,对策略类的初始化,日志的封装
2、策略类是以辅助资料划分,每个实体会有一个或多个资料,根据xml中的PropertyModel选择对应的策略类执行
3、策略类主要用于做数据的合法性校验,包括字段长度,判空,状态是否合法
4、字符串类型,关联字段id,int类型可以使用通用方法进行更新,实质是直接通过sql进行更新。特殊的字段如:银行信息,联系人等分录形式的字段,需要特殊处理
5、节点新增和删除都需要重启客户端和服务器
四、代码样例
1、UI界面类设计:com.kingdee.eas.basedata.master.batch.client.AssistDataSyncToSubUI
2、编写xml文件。文件名分别是 客户:customer_model_sync_assist.xml(以此为例)
文件参考:
物料:material_model_sync_assist.xml
供应商:supplier_model_sync_assist.xml entitymodelset为集合模型
节点:entitymodel--》properties--》增加propertymodel节点代码示例:
<!-- 测试字段 --> <propertymodel class="com.kingdee.eas.basedata.master.batch.model.PropertyModelInfo"> <classid>com.kingdee.eas.basedata.master.cssp.app.CustomerCompanyInfo.test01 </classid> <bosid>test01</bosid> </propertymodel>
五、注意事项
1、同步下级功能在列表使用快捷键Ctrl + Shift+N触发,由于是直接通过表同步到下级,同步后下级可能无法第一时间感知到。
2、感兴趣的二开同学可以通过自己编写策略类,同步自己二开的实体
六、补丁影响
补丁、类和XML文件所属领域:BASEDATA
861以上版本默认支持
861及以下版本需要打补丁:
861补丁:PT168640 850补丁:PT169091 820补丁:PT169027 800补丁:PT169028
主数据DEP扩展字段同步到下级组织二开实践案例
本文2024-09-22 20:10:42发表“eas cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-eas-111948.html