二开案例.单据体显示物料上的附件

需求:物料上添加了附件字段,用于上传图纸。希望录单时,能查看附件
二开方案:在单据明细上增加附件字段,使用二开插件,将物料的附件携带到该字段上。
1、在物料上添加“多选附件(文件服务器)”字段,ID为F_UNW_ATTACHMENTS_QTR

2、在单据体上添加“基础资料属性”字段,引用物料上的附件字段

3、在单据体上添加“基础资料属性”字段,引用物料上的附件字段。打开单据,发现系统不支持,带不出附件。

4、变通实现,在单据体上添加“多选附件(文件服务器)”字段,ID为F_UNW_Attachments_tzk。通过二开插件,将物料上的附件带到该字段上。
注意:该字段值来自物料,不需要保存到数据库。可设置成只读,“字段名”属性设置为空。

4、通过二开插件,将物料上的附件带到该字段上。
using Kingdee.BOS.Contracts;
using Kingdee.BOS.Core.Bill.PlugIn;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Core.Metadata;
using Kingdee.BOS.Orm.DataEntity;
using Kingdee.BOS.ServiceHelper;
using System;
using System.Linq;
namespace Test202408
{
[Kingdee.BOS.Util.HotUpdate]
public class 单据体明细显示物料附件 : AbstractBillPlugIn
{
string materialFieldKey = "F_UNW_Material"; //单据体中的物料字段名
string fromFieldKey = "F_UNW_Attachments_qtr"; //物料上的附件字段名
string toFieldKey = "F_UNW_Attachments_tzk"; //单据体上的附件字段名
public override void AfterBindData(EventArgs e)
{
var entry = this.View.BusinessInfo.GetEntity("FEntity");
var rows = this.Model.GetEntityDataObject(entry);
for (int i = 0; i < rows.Count; i++)
{
LoadMaterialAttachments(materialFieldKey, fromFieldKey, toFieldKey, i);
}
}
public override void DataChanged(DataChangedEventArgs e)
{
if (e.Key == materialFieldKey)
{
LoadMaterialAttachments(materialFieldKey, fr二开案例.单据体显示物料上的附件
需求:物料上添加了附件字段,用于上传图纸。希望录单时,能查看附件二开方案:在单据明细上增加附件字段,使用二开插件,将物料的附件携带...
点击下载文档文档为doc格式
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
上一篇
已经是第一篇



