二开案例.列表插件.批量审批时显示特定列

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

二开案例.列表插件.批量审批时显示特定列

【应用场景】

列表的某些列,在普通列表上不需要显示,仅在待办任务批量审批时才显示



【实现方案】

<1>因为列表的列仅支持二开控制其隐藏,不支持二开控制其显示,需反向操作来实现。

<2>列表默认方案将特定列设置为显示。

<3>设计如下列表插件,控制特定列在普通列表上隐藏。



【实现步骤】

<1>编写列表插件,代码如下。

using Kingdee.BOS.Core.List.PlugIn;
using Kingdee.BOS.Core.List.PlugIn.Args;
using Kingdee.BOS.Util;
using System.Collections.Generic;
using System.ComponentModel;
namespace Jac.XkDemo.BOS.Business.PlugIn
{
    /// <summary>
    /// 【列表插件】批量审批时显示特定列
    /// </summary>
    [Description("【列表插件】批量审批时显示特定列"), HotUpdate]
    public class AssignApprovalBatchShowColumnListPlugIn : AbstractListPlugIn
    {
        public override void PrepareFilterParameter(FilterArgs e)
        {
            base.PrepareFilterParameter(e);
            if (this.View.OpenParameter.GetCustomParameter("WorkflowBatchControlKey") == null)
            {
                // 如果不是批量审批界面,隐藏特定列
                var needHideFields = new HashSet<string>();
                needHideFields.Add("FCODE");// 货币代码
                needHideFields.Add("FDocumentStatus");// 数据状态
                // TODO
                e.ColumnFields.RemoveAll(o => needHideFields.Contains(o.Key));
            }
        }
    }
}


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



<3>BOSIDE扩展采购订单,注册列表插件,保存元数据,开发完毕。


---------------------------------------------------------------------------------------------------------













【金蝶云星空BOS二次开发案例演示】https://vip.kingdee.com/article/94751030918525696


二开案例.列表插件.批量审批时显示特定列

【应用场景】列表的某些列,在普通列表上不需要显示,仅在待办任务批量审批时才显示。【实现方案】<1>因为列表的列仅支持二开控制其隐藏,...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息