PLM二开案例.BOM升版时将上层BOM一同升版

【应用场景】
设计BOM库中对BOM升版时,携带上层BOM一同升版
【注意事项】
二开时请注意严格遵循标准校验逻辑,只增不减。如果强行跳过校验可能会导致数据问题!!。
此方案无法设置上层BOM的具体版本或者跳版本,只能升单个版本。
【案例演示】
自定义升版操作,并联动上层BOM一同升版

【实现步骤】
<1>新增一个组件和类,引用组件。

<2>新增一个类,继承标准升版服务插件类UpgradeBigVersion。此案例处理升大版,升小版本则需继承UpgradeSmallVersion插件类。
重写GetAutoUpgradeRelatedObject方法,目的为在相关对象列表中加入反查的BOM对象,以此达到一同升版的目的。 同时可以维护提示信息,供升版确认。
编写代码如下:
using Kingdee.K3.PLM.CFG.App.ServicePlugIn.VersionService;
using Kingdee.K3.PLM.CFG.Common.BusinessEntity.Manager;
using Kingdee.K3.PLM.STD.Common.BusinessEntity.Bom;
using System;
using System.Collections.Generic;
using System.ComponentModel;
namespace ISV.DEMO.Common.BussinessEntity
{
[Description("二开升大版服务插件")]
public class CustomUpgradeBigVersion: UpgradeBigVersion
{
public override void GetAutoUpgradeRelatedObject(Kingdee.K3.PLM.Common.Core.BOSBridge.PLMContext context, Kingdee.BOS.Orm.DataEntity.DynamicObject upgradeObj, Kingdee.K3.PLM.Common.BusinessEntity.PLMOperationParam param, ref List<Kingdee.BOS.Orm.DataEntity.DynamicObject> updateReObjList, ref string errorMsg)
{
base.GetAutoUpgradeRelatedObject(context, upgradeObj, param, ref updateReObjList, ref errorMsg);//标准逻辑先走
var parentBomIds = BomManager.Instance.GetAncestorBomIds(context, Convert.ToInt64(upgradeObj["id"])); //反查BOM对象
var bomObjs = DomainObjectManager.AutoLoad(context, parentBomIds);
string validateM
PLM二开案例.BOM升版时将上层BOM一同升版
【应用场景】设计BOM库中对BOM升版时,携带上层BOM一同升版【注意事项】二开时请注意严格遵循标准校验逻辑,只增不减。如果强行跳过校验可...
点击下载文档文档为doc格式
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
上一篇
已经是第一篇



