二开案例.表单插件.AfterDeleteEntry

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

二开案例.表单插件.AfterDeleteEntry

【应用场景】

分录行全部数据被删除后,设置单据头字段锁定性,设置菜单可见性等。


【案例演示】

采购订单,明细信息单据体的分录行全部数据被删除后,设置单据头字段锁定性。


【实现步骤】

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

using Kingdee.BOS.Core.DynamicForm.PlugIn;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Util;
using System.ComponentModel;
namespace Jac.XkDemo.BOS.Business.PlugIn
{
    /// <summary>
    /// 【表单插件】AfterDeleteEntry
    /// </summary>
    [Description("【表单插件】AfterDeleteEntry"), HotUpdate]
    public class AfterDeleteEntryFormPlugIn : AbstractDynamicFormPlugIn
    {
        public override void EntryBarItemClick(BarItemClickEventArgs e)
        {
            base.EntryBarItemClick(e);
            if (e.BarItemKey.EqualsIgnoreCase("test"))
            {
                // 删除分录全部数据行
                this.Model.DeleteEntryData("FPOOrderEntry");
            }
        }
        public override void AfterDeleteEntry(AfterDeleteEntryEventArgs e)
        {
            base.AfterDeleteEntry(e);
            if (e.EntityKey.EqualsIgnoreCase("FPOOrderEntry"))
            {
                // 分录行全部删除后,锁定单据头字段
                this.View.GetControl("FSupplierId").Enabled = false;
                this.View.GetControl("FPurchaseOrgId").Enabled = false;
                this.View.GetControl("FPurchaseDeptId").Enabled = false;
                this.View.GetControl("FPurchaserGroupId").Enabled = false;
                this.View.GetControl("FACCTYPE").Enabled = false;
                this.View.ShowMessage("明细信息单据体的数据行已全部删除!");
            }
        }
    }
}

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


<3>BOSIDE扩展采购订单,订单明细单据体菜单集合新增菜单项,注册表单插件,保存元数据,开发完毕。


【功能验证】

<1>登录业务站点,打开采购订单新增界面,先新增分录行,然后点test,效果如下图。

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













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

二开案例.表单插件.AfterDeleteEntry

【应用场景】分录行全部数据被删除后,设置单据头字段锁定性,设置菜单可见性等。【案例演示】采购订单,明细信息单据体的分录行全部数据被...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息