PLM.二开案例.对象点击变更时指定变更单业务类型

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:1

PLM.二开案例.对象点击变更时指定变更单业务类型

【应用场景】

在对象列表上点击【变更】时,能够按照对象类型指定变更单类型,以快速发起自定义的变更单业务类型。



【注意事项】

仅支持PT-150002及以上版本。



【接口说明】

干预对象列表中的变更按钮操作,可以按实际场景指定具体的业务类型。


IECNOperationService

组件:Kingdee.K3.PLM.CFG.Common.Interface.DLL

命名空间:Kingdee.K3.PLM.CFG.Common.Interface.EngineeringChange


接口方法

  • SpecificCategoryId

long SpecificCategoryId(PLMContext ctx, List<DynamicObject> dominObjs, ViewInvokeEventArgs e);

       

       方法参数:    

ctx
PLM上下文
dominObjs
选中对象列表。模型为具体的业务类型模型
e预留事件参数

       方法返回

            指定变更单业务类型ID



【实现步骤】

本实例演示:选中某类型文档时,点击变更按钮后跳转至发起子类型变更单

<1> 前提:

PLM插件开发模式

二次开发扩展程序开发之插件模式 (kingdee.com)


<2>参考<1>中的插件开发指引,编写针对BOM业务类型的接口实现插件如下:

using Kingdee.BOS.Orm.DataEntity;
using Kingdee.K3.PLM.Business.PlugIn;
using Kingdee.K3.PLM.CFG.Common.Interface.EngineeringChange;
using Kingdee.K3.PLM.Common.Core.BOSBridge;
using System;
using System.Collections.Generic;
using System.Linq;

namespace ISV.EcnService.Common.BusinessEntity
{
    public class ECNOperationServiceImplement //: IECNOperationService
    {
        public long SpecificCategoryId(PLMContext ctx, List<DynamicObject> dominObjs, ViewInvokeEventArgs e)
        {
            if (dominObjs.Any(x => Convert.ToInt64(x["CategoryId_Id"]) >= 1020800000000000000L && Convert.ToInt64(x["CategoryId_Id"]) < 1020900000000000000L))
            {
                return 1070201000000000000L;
            }
            return 0L; //缺省返回,0或者非变更业务类型则发起默认的变更单类型。
        }
    }
}

 你可能需要的组件参考:


* 业务类型ID可参考PLM.如何查找业务类型对象单据以及数据库字段 (kingdee.com)中的说明


<3>拷贝插件组件到应用站点的WebSite\Bin目录下,重启IIS。


【功能验证】

<1>登录业务站点,选中对应类型的文档发起点击变更测试



【参考资料】

【合辑】金蝶云.星空 PLM知识合辑(持续更新) (kingdee.com)

【汇总】星空PLM二开指南(持续更新) (kingdee.com)

二次开发扩展程序开发之插件模式 (kingdee.com)

金蝶云星空BOS二次开发案例演示 (kingdee.com)


PLM.二开案例.对象点击变更时指定变更单业务类型

【应用场景】在对象列表上点击【变更】时,能够按照对象类型指定变更单类型,以快速发起自定义的变更单业务类型。【注意事项】仅支持PT-150...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息