寻源管理二开指南--附件开发要点

栏目:云星瀚知识作者:金蝶来源:金蝶云社区发布:2024-09-22浏览:1

寻源管理二开指南--附件开发要点

1. 附件开发要点

1.1    附件的类型

1.1.1    根据元数据划分

1附件面板:“附件面板”一个面板控件,它不属于实体的属性,无法通过动态对象获取附件面板的信息。因此,如果我们需要获得一个表单的附件面板的数据,往往需要用到AttachmentServiceHelper进行查询。其数据存放在元数据bos_attachment中。

// 获取 报价单的附件面板的附件数据:

List<Map<String, Object>>   attachments = AttachmentServiceHelper.getAttachments(TndMetadataConstant.TND_QUOTEBILL,   billId, sourceAttachPanel, false);

// 绑定 数据到附件面板

AttachmentPanel attachmentPanel = this.getvew().getControl(targetAttachPanel);

attachmentPanel.bindData(attachments);

 

 

2、附件字段:附件字段的本质是一个多选基础资料,其为一个实体的字段,在代码开发中可以从DynamicObject中获取到附件字段的信息,正如其他多选基础资料一样。也可以用附件字段的接口AttachmentFieldServiceHelper。其数据存放在元数据 bd_attachment 中。

附件字段的取值和赋值,同多选基础资料。

 

在寻源管理中,为了便于附件处理,封装了一些工具类,如下所示:

//标的附件获取

List<Map<String, Object>>   purAttachs = AttachmentUtils.getEntryAttachments(SrcMetadataConstant.SRC_PURLISTF7,   purfilter, SrcCommonConstant.PURLISTENTRY_FJ, context.getBillId());

 

// 标的附件携带多选基础资料需要复制,否则会出现pkId重复

row.set(SrcPurlistConstant.PURLISTENTRY_FJ, PdsCommonUtils.cloneAttachment(materialObj,   SrcPurlistConstant.PURLISTENTRY_FJ));

 

附件面板和附件字段应如何区分

https://developer.kingdee.com/article/395620656659746816?channel_level=%E9%87%91%E8%9D%B6%E4%BA%91%E7%A4%BE%E5%8C%BA%7C%E6%90%9C%E7%B4%A2%7C%E7%BB%BC%E5%90%88&productLineId=29

 

1.1.2    根据应用场景划分

1主单据中的附件面板


2组件中的附件面板,如“开标说明组件”中的附件


3分录附件,典型的有采购清单分录附件、标书分录附件等


4、独立的附件字段:类型与分录附件一样,但不是放在单据体中,而是作为一个独立的字段存在,如“报名登记”中的汇总附件。


5报表附件,在主单据或组件上配置了打印模板,系统可以动态地将当前数据根据模板,转为pdf附件。也可以通过 电子归档,自动收集报表附件,详见电子归档资料。

 

特别注意:附件面板独立的附件字段,其附件url均为临时地址,在保存到数据库之前,需要转换为正式地址,否则一段时间后就失效,无法查看和下载。

//   获取临时附件

DynamicObjectCollection   attachRows = this.getModel().getDataEntity().getDynamicObjectCollection(SrcCommonConstant.ATTACHMENT);

//   转化为正式附件

AttachmentUtils.convertTempAttachments(attachRows);

 

1.2    附件的应用场景

典型附件的应用场景,主要包括:1)电子归档;2)附件汇总;3)移动审批

1.2.1    电子归档,根据归档方案,手工或自动归集


1.2.2    附件汇总组件,动态汇总

附件汇总组件可以挂到主业务节点上,如定标单或签约单,其数据是动态加载的。

 

1.2.3    移动审批

移动审批往往需要附件信息,这些附件的归集方式,与附件汇总或归档类似,可以通过配置实现复用。

 

 

1.3    附件的归集方式

 

1.3.1    电子归档的附件归集

根据归档对象、归档方案手工或自动进行归集

详见:https://vip.kingdee.com/article/312279711407517696?productLineId=2&isKnowledge=2

 

1.3.2    附件汇总组件的附件归集

方式一、通过电子归档方案获取附件

为了实现更灵活的附件收集方式,系统支持用电子归档模式动态获取附件到附件汇总或移动审批中。

 1、配置相应的电子归档方案,需要设置对应的业务对象,如项目启动、供方入围等。


2、设置了归档方案后,系统获取附件数据时,将优先采用归档方案获取附件。

3附件汇总组件移动审批附件的处理方式是一样的。

 

方式二、通过插件获取附件

1、标准产品预置了大部分的附件获取插件,二开可参考这些插件,开发新的插件。

 

2、插件注册:将插件注册到需要挂载 附件汇总组件主节点中,如上述的定标附件汇总、签约附件汇总,注意插件编码为:主节点元数据标识_attach,如定标附件汇总:src_decision_attach, 签约附件汇总:src_contract_attach

 

1.3.3    移动审批的附件归集

移动审批的附件获取方式,与 附件汇总组件 类似,主节点移动表单/布局元数据标识_attach,如项目启动移动审批附件汇总:src_project_mov_attach

 

1.3.4    变更单移动审批的附件归集

可参考:https://vip.kingdee.com/knowledge/specialDetail/193748733484879104?category=271308985850964480&id=467366005316886016&productLineId=2

 


寻源管理二开指南--附件开发要点

1. 附件开发要点1.1 附件的类型1.1.1 根据元数据划分1、附件面板:“附件面板”一个面板控件,它不属于实体的属性,无法通过动态...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息