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

物料升大小版本时,如何维护升版原因

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

物料升大小版本时,如何维护升版原因

【应用场景】

支持升版时必须录入升版原因,且升版成功后清空升版原因。


【注意事项】

  1. 首选需要分别在升大版,升小版操作基础上注册二开服务插件,用于校验升版原因必填;

  2. 然后研发物料列表插件和表单插件注册单据插件,用于清空升版原因,下列以物料库上升版为demo,物料详情思路一致。


【实现步骤】

<1.1>编写校验升版原因必填服务插件,代码如下。

using Kingdee.BOS.Orm.DataEntity;
using Kingdee.K3.PLM.CFG.App.ServicePlugIn.VersionService;
using Kingdee.K3.PLM.CFG.Common.BusinessEntity.Manager;
using Kingdee.K3.PLM.Common.BusinessEntity;
using Kingdee.K3.PLM.Common.Core.BOSBridge;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
namespace Kingdee.K3.PLM.CFG.App.ServicePlugIn
{
    [Description("校验升版原因必填插件")]
    public class CheckUpgradeCondition : UpgradeBigVersion
    {
        public override bool CheckUpgradeVersionRule(PLMContext context, DynamicObject upgradeObj, PLMOperationParam param, out string errorMsg)
        {
            if (this.PLMParam.Type == PLMOperationType.Bill)
            {
                var baseId = Convert.ToInt64(upgradeObj["Id"]);
                var categoryId = Convert.ToInt64(upgradeObj["CategoryID_Id"]);
                var pdmobj = DomainObjectManager.Instance(this.PLMContext, categoryId).Get(this.PLMContext, baseId);
                if (pdmobj != null)
                {
                    string upgradeReason = Convert.ToString(pdmobj["Reason"]);
                    if (string.IsNullOrEmpty(pdmobj["UpgradeReason"].ToString()))
                    {
                        errorMsg = string.Format("请填写升版原因!");
                        return false;
                    }
                }
            }
            errorMsg = null;
            return true;
        }
    }
}

<1.2>升版成功后清空升版原因插件,代码如下。

using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.ServiceHelper;
using Kingdee.K3.PLM.Business.PlugIn;
using Kingdee.K3.PLM.CFG.Common.BusinessEntity.Manager;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
namespace Kingdee.K3.PLM.CFG.Business.PlugIn
{
    [Description("清空升版原因列表插件")]
    public class ClearUpgradeReason : AbstractPLMListPlugIn
    {
        string upgradeType = "";
        public override void PreOpenForm(PreOpenFormEventArgs e)
        {
            var paras = this.View.OpenParameter.GetCustomParameters();
            if (paras.ContainsKey("Kingdee.BOS.CosmicOptionKey")) //按钮操作key
            {
                upgradeType = (string)this.View.OpenParameter.GetCustomParameter("Kingdee.BOS.CosmicOptionKey");
            }
            base.PreOp

物料升大小版本时,如何维护升版原因

【应用场景】支持升版时必须录入升版原因,且升版成功后清空升版原因。【注意事项】首选需要分别在升大版,升小版操作基础上注册二开服务插...
点击下载文档文档为doc格式

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

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