二开案例.单据插件.单据类型

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

二开案例.单据插件.单据类型

【应用场景】

在单据界面上使用单据类型字段。


【案例演示】

采购订单有单据类型字段,通过插件显示所有的单据类型,切换单据类型。


【实现步骤】

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

using Kingdee.BOS.Core.Bill.PlugIn;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Core.Metadata.FieldElement;
using Kingdee.BOS.Util;
using System.ComponentModel;
using System.Linq;
using Kingdee.BOS.Web.Bill;
namespace Jac.XkDemo.BOS.Business.PlugIn
{
    /// <summary>
    /// 【单据插件】单据类型
    /// </summary>
    [Description("【单据插件】单据类型"), HotUpdate]
    public class BillTypeBillPlugIn : AbstractBillPlugIn
    {
        public override void BarItemClick(BarItemClickEventArgs e)
        {
            base.BarItemClick(e);
            if (e.BarItemKey.EqualsIgnoreCase("test1"))
            {
                // 查看所有单据类型
                //var billTypeField = this.View.BillBusinessInfo.GetBillTypeField();
                var billTypeField = (BillTypeField)this.View.BillBusinessInfo.GetField("FBillTypeID");
                var msg = string.Join("\r\n", billTypeField.BillTypeInfo.Select(o => string.Format("单据类型名称:{0},单据类型内码:{1}", o["Name"], o["Id"])));
                this.View.ShowMessage(msg);
                return;
            }
            if (e.BarItemKey.EqualsIgnoreCase("test2"))
            {
                // 切换单据类型
                var billView = (BillView)this.View;
                var billTypeId = "6d01d059713d42a28bb976c90a121142";
                billView.UpdateValue("FBillTypeID", 0, billTypeId);
                return;
            }
        }
    }
}


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


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



【功能验证】

登录业务站点,打开采购订单新增界面,点击菜单【查看所有单据类型】,如下图所示。

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













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


二开案例.单据插件.单据类型

【应用场景】在单据界面上使用单据类型字段。【案例演示】采购订单有单据类型字段,通过插件显示所有的单据类型,切换单据类型。【实现步骤...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息