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

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

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

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

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().getDynamicOb

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

1. 附件开发要点1.1 附件的类型1.1.1 根据元数据划分1、附件面板:“附件面板”一个面板控件,它不属于实体的属性,无法通过动态...
点击下载文档文档为doc格式

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

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