TR评审流程.待办卡片二开处理按钮直接打开单据处理界面原创
3人赞赏了该文章
237次浏览
编辑于2023年01月06日 09:58:21
【应用场景】
希望用户在主页面的待办卡片中点击处理按钮时,直接打开单据处理界面而不是弹出快捷处理窗口。
【案例演示】
TR自检节点,处理时直接点开窗口,非TR自检节点正常使用快捷处理。
【实现步骤】
<1>参考待办卡片二开屏蔽处理按钮功能 (kingdee.com),替换待办卡片单据插件
<2>调整插件代码,根据代办信息判断流程节点信息,如果是TR自检节点时转为直接打开处理单据,其余保持原状。
参考组件:
示例代码:
using Kingdee.BOS.Business.PlugIn.MainConsole.H5Card.H5SmartCard; using Kingdee.BOS.Core.DynamicForm.PlugIn.Args; using Kingdee.BOS.JSON; using Kingdee.BOS.Util; using Kingdee.BOS.Workflow.ServiceHelper; using System.ComponentModel; namespace Kingdee.BOS.Test.PlugIn.TestControls.Other { [Description("待办卡片处理按钮屏蔽")] [HotUpdate] public class H5SmartAgencyTaskCardPlugInHideProcessBtn : H5SmartAgencyTaskCardPlugIn { public override void NaviOperAction(NaviOperActionArgs e) { if (e.Key.EqualsIgnoreCase("FAgencyTaskContent") && !string.IsNullOrWhiteSpace(e.SelectItemId)) { var cfg = WorkflowTemplateServiceHelper.GetActivityControlByAssignId(this.Context, e.SelectItemId); //以流程节点配置的视图为依据,如果是TR自检节点的视图时,则改为直接打开单据处理 if(cfg != null && !string.IsNullOrWhiteSpace(cfg.LayoutId) && cfg.LayoutId == "eb4d0946-08ff-4acb-bf18-5f266f91069c") { JSONObject jo = new JSONObject(); jo["btnkey"] = "title"; e.Data = jo; base.NaviOperAction(e); } } } } }
TR视图ID可在元数据或者数据库中查询:
【参考资料】
【金蝶云星空BOS二次开发案例演示】
https://vip.kingdee.com/article/94751030918525696
【汇总】星空PLM二开指南(持续更新...)
https://vip.kingdee.com/article/329319878643190272
推荐阅读