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

表单插件干预导入基础资料取数

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

表单插件干预导入基础资料取数

# 1 前言 导入过程将触发单据的表单插件,可以通过注册表单插件的方式来干预导入的基础资料字段取数。 # 2 业务场景 在导入基础资料类型的数据时,需要根据内码、编码或名称来获取到唯一的基础资料数据。但是当根据编码或名称查到多个结果时,这条数据就会导入失败,可以通过表单插件进行干预需要导入的基础资料。 # 3 实现方案 在表单设计器中注册插件继承表单插件基类kd.bos.entity.plugin.AbstractDataModelPlugin后重写queryImportBasedata()方法,设置正确的id即可。 ## 代码示例 ``` /** * 自定义导入的基础资料 * 例:某张单据存在一个为“物料”的基础资料,在导入时根据物料的名称得到多条数据,筛选出符合自定义条件的数据(以筛选电风扇为例) **/ public class CustomizeBaseDataImport extends AbstractBillPlugIn { public static final String MATERIEL = "materielfield"; @Override public void queryImportBasedata(QueryImportBasedataEventArgs e) { Map<BasedataItem, List<Object>> searchResult = e.getSearchResult(); for (Map.Entry<BasedataItem, List<Object>> baseDataItemListEntry : searchResult.entrySet()) { BasedataItem basedataItem = baseDataItemListEntry.getKey(); if (basedataItem.getFieldKey().equals(MATERIEL)) {//判断当前基础资料是否为 物料 //遍历物料的内码,根据内码拿到物料的数据包,选择长度为 20 的 电风扇 for (int i = 0;i < baseDataItemListEntry.getValue().size();i++){ DynamicObject dyn = BusinessDataServiceHelper.loadSi

表单插件干预导入基础资料取数

# 1 前言导入过程将触发单据的表单插件,可以通过注册表单插件的方式来干预导入的基础资料字段取数。# 2 业务场景在导入基础资料类型的...
点击下载文档文档为doc格式

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

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