柔性生产中,HMI端扫码汇报,报不良选择了多个缺陷类型,可否在汇报单的缺陷类型显示多个的二开方案
【应用场景】
柔性生产中,HMI端扫码汇报,报不良选择了多个缺陷类型,可否在汇报单的缺陷类型显示多个
【实现步骤】
<1>需要在工序汇报的元数据上面增加一个子单据体,拖入基础资料 ,用来记载缺陷类型的
<2>需要自定义一个插件,代码如下:
using Kingdee.BOS; using Kingdee.BOS.App; using Kingdee.BOS.Contracts; using Kingdee.BOS.Core.Metadata; using Kingdee.BOS.JSON; using Kingdee.BOS.Orm.DataEntity; using Kingdee.BOS.Orm.Metadata.DataEntity; using Kingdee.BOS.Util; using Kingdee.K3.Core.MFG; using Kingdee.K3.Core.MFG.BizException; using System; using System.Collections.Generic; using System.Linq; using Kingdee.K3.Core.MFG.SFC.Defect; using Kingdee.K3.MFG.SFC.App.Core.SFSMessageHandle.ScheduleService.Executor.ParamValue; using Kingdee.K3.MFG.SFC.App.Core.SFSMessageHandle.ScheduleService.Executor.PlugIn; namespace Kingdee.K3.MFG.SFS.App.Core.Executor { public class OptRptMsgPlugIn : AbstractMsgPlugIn { [MsgExecutorParam] public ExecuteByCacheInfoParam MsgParam { get; set; } public override void EndDoTransactionOfAll( Kingdee.K3.MFG.SFC.App.Core.SFSMessageHandle.ScheduleService.Executor.PlugIn.Args.EndDoTransactionOfAllEventArgs e) { base.EndDoTransactionOfAll(e); if (this.MsgParam.GenOptRptObjs == null) return; // 赋值工序汇报子单据体字段 UpdateSubEntryExtendValue(e.Context); } private void UpdateSubEntryExtendValue(Context ctx) { FormMetadata metadata = ServiceHelper.GetService<IMetaDataService>().Load(ctx, "SFC_OperationReport") as FormMetadata; DynamicObjectType edt = metadata.BusinessInfo.GetEntity("FSubEntity").DynamicObjectType; DynamicObjectCollection rptEntries = (this.MsgParam.GenOptRptObjs[0]["OptRptEntry"] as DynamicObjectCollection); foreach (var rptEntry in rptEntries) { } List<DefectInfo> a = this.MsgParam.DefectDic.Values.ToList(); List<DefectDetailInfo> ddinfos = a[0].DefectDetails; foreach (var item in ddinfos) { long defectTypeId = item.DefectTypeId;//缺陷类型 } //可以拿到所有的缺陷类型 } } }
上述的插件可以拿到汇报单以及缺陷类型的ID,只需要依次把缺陷类型ID依次赋值到工序汇报二开的新增里面的子单据体。
<3>在“消息处理器定义”中,针对生成不良消息处理器CreateBadRpt,增加插件实现类:
【功能验证】
【参考资料】
【二开案例.基础资料.联动查询(GetValue)】
https://vip.kingdee.com/article/127710528226504960
【金蝶云星空BOS二次开发案例演示】
https://vip.kingdee.com/article/94751030918525696
柔性生产中,HMI端扫码汇报,报不良选择了多个缺陷类型,可否在汇报单的缺陷类型显示多个的二开方案
【应用场景】柔性生产中,HMI端扫码汇报,报不良选择了多个缺陷类型,可否在汇报单的缺陷类型显示多个【实现步骤】<1>需要在工序汇报的元数...
点击下载文档
本文2024-09-23 03:29:31发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-159200.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章