二开产品配置的自定义字段填写到保存之后的BOM原创
6人赞赏了该文章
1,086次浏览
编辑于2023年11月14日 10:26:16
一、针对产品配置一些自定义的逻辑,有一些小技巧的二开方法可以使用
(1)表单插件自定义字段填写到保存之后的BOM中,例如表头自定义分组字段填写至新bom
<1>通过继承表单插件【BOMConfigEdit】,然后重写方法【AfterBarItemClick】如
using Kingdee.BOS.Orm.DataEntity; using Kingdee.K3.MFG.ENG.Business.PlugIn.Base; using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; using Kingdee.K3.Core.MFG.EntityHelper; using Kingdee.BOS.ServiceHelper; using Kingdee.BOS.Core.Bill.PlugIn; using Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel; [Description("继承标准产品配置单据插件-界面控制")] public class ExtBomCfgExtendEdit : BOMConfigEdit { public override void AfterBarItemClick(BOS.Core.DynamicForm.PlugIn.Args.AfterBarItemClickEventArgs e) { base.AfterBarItemClick(e); switch (e.BarItemKey) { case "tbSave": case "tbSplitSave": List<DynamicObject> afterSaveDataLst = base.standBomDatas; long bomGroupId = this.View.Model.DataObject.GetDynamicValue<long>("GROUP_Id"); if (bomGroupId == 0) return; foreach (var afterSaveData in afterSaveDataLst) { afterSaveData.SetDynamicObjectItemValue("Group_Id", bomGroupId); } BusinessDataServiceHelper.Save(this.View.Context, afterSaveDataLst.ToArray()); break; } } }
注意:如果是自定义的拼接逻辑,需要重载BarItemClick方法,在执行Base方法之前,编写自己的拼接逻辑。
二开此处之后,选项参数-保存后自动提交,提交后自动审核不能勾选,如下图所示;
注册插件时,需要取消标准插件的启用,如图所示:
赞 6
6人点赞
还没有人点赞,快来当第一个点赞的人吧!
打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!
推荐阅读