二开案例.列表插件.信息中心已办列表显示单据编号
【应用场景】
历史版本,信息中心待办列表可以显示单据编号,而已办列表没有单据编号字段,不方便查看。
此方案演示如何通过二开的方式给已办列表增加单据编号字段。
注意:标准产品已在版本PT-146930 [8.1.0.20221110]及之后的版本,给已办列表增加了单据编号字段,您也可以通过升级补丁的方式解决此问题,最新版本支持效果如下图。
【解决方案】
目前有2种方案来实现此需求。
<1>元数据大调整,扩展信息中心_已办任务,新增单据编号字段,调整单据头绑定的视图V_WF_ASSIGNEND,视图上要新增单据编号字段,单据编号可从流程实例编码截取而来。(此方案标准产品预计22年9月补丁会发布)
此方案支持单据编号显示、过滤和排序,但实现过程复杂,后续升级维护麻烦。
<2>不动元数据,仅通过列表插件动态创建列。
此方案仅能显示单据编号,不支持使用单据编号进行过滤和排序。
本案例采用此方案实现。
【案例演示】
信息中心已办列表显示单据编号。
【实现步骤】
<1>编写列表插件,代码如下。
using Kingdee.BOS; using Kingdee.BOS.Core.List; using Kingdee.BOS.Core.List.PlugIn; using Kingdee.BOS.Core.List.PlugIn.Args; using Kingdee.BOS.Util; using System; using System.ComponentModel; using System.Linq; namespace Jac.XkDemo.BOS.Business.PlugIn { /// <summary> /// 【列表插件】信息中心已办列表显示单据编号 /// https://vip.kingdee.com/article/352107501707124992 /// </summary> [Description("【列表插件】信息中心已办列表显示单据编号"), HotUpdate] public class AppendBillNoColumnListPlugIn : AbstractListPlugIn { public override void CreateListHeader(CreateListHeaderEventArgs e) { base.CreateListHeader(e); if (!e.ListHeader.GetChilds().Exists(o => o.Key.EqualsIgnoreCase("FNumber"))) { // 如果流程实例编码列被隐藏了,单据编号列也隐藏 return; } var header = e.ListHeader.AddChild(0); header.Caption = new LocaleValue("单据编号/编码"); header.Key = "FBillNo"; header.FieldName = "FBillNo"; header.ColType = SqlStorageType.Sqlnvarchar; header.Width = 200; header.Visible = true; header.ColIndex = e.ListHeader.GetChilds().Max(o => o.ColIndex) + 1; } public override void FormatCellValue(FormatCellValueArgs args) { base.FormatCellValue(args); if (args.Header.Key.Equals("FBillNo", StringComparison.OrdinalIgnoreCase)) { var row = (ListRow) args.DataRow; if (!row.ColumnContains("FNUMBER")) { // 如果流程实例编码列被隐藏了,单据编号列也隐藏 return; } var procNumber = row["FNUMBER"] as string; if (string.IsNullOrWhiteSpace(procNumber)) { return; } var splitIndex = procNumber.LastIndexOf("_"); if (splitIndex <= 0) { return; } var billNo = procNumber.Substring(0, splitIndex); args.FormateValue = billNo; } } } }
<2>拷贝插件组件到应用站点的WebSite\Bin目录下,重启IIS。
<3>BOSIDE扩展[信息中心_已办任务未归档(WF_AssignmentHisBill)],注册列表插件,保存元数据,开发完毕。
【功能验证】
<1>登录业务站点,打开信息中心已办列表,此时可以显示单据编号啦。
---------------------------------------------------------------------------------------------------------
【金蝶云星空BOS二次开发案例演示】https://vip.kingdee.com/article/94751030918525696
二开案例.列表插件.信息中心已办列表显示单据编号
【应用场景】历史版本,信息中心待办列表可以显示单据编号,而已办列表没有单据编号字段,不方便查看。此方案演示如何通过二开的方式给已办...
点击下载文档
本文2024-09-23 03:57:48发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-162222.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章