您现在的位置是:首页> ERP实施维护 > 金蝶云星空插件开发ERP实施维护 > 金蝶云星空插件开发

金蝶云星空获取销售订单获取统一社会信用代码插件

2026-01-18 金蝶云星空插件开发浏览量101

简介在销售订单获取客户的统一社会信用代码,点击test按钮 赋值到备注上显示需要引用社会信用代码默认没有引用,不然程序会报错。usingKingdee.BOS;usingKingdee.BOS.Core;usingKingdee.BOS.Core.Bill.PlugIn;usingKingdee.BOS.Core.DynamicForm.PlugIn.Args;usingKingdee.BOS.Cor

在销售订单获取客户的统一社会信用代码,点击test按钮 赋值到备注上显示

需要引用社会信用代码默认没有引用,不然程序会报错。

using Kingdee.BOS;
using Kingdee.BOS.Core;
using Kingdee.BOS.Core.Bill.PlugIn;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Core.Metadata.Util;
using Kingdee.BOS.Orm.DataEntity;
using Kingdee.BOS.Util;
using System;
using System.Net;

namespace testtanchuang
{
    [Kingdee.BOS.Util.HotUpdate]
    public class ClassName : AbstractBillPlugIn
    {
        // 重写点击按钮事件
        public override void BarItemClick(BarItemClickEventArgs e)
        {
            base.BarItemClick(e);

            // 仅处理指定按钮点击
            if (e.BarItemKey == "UNW_tbButton")
            {
                // 1. 获取FCustId对应的DynamicObject
                DynamicObject objt = this.View.Model.GetValue("FCustId") as DynamicObject;

                // 2. 定义三个变量,分别存储Id、编码(Number)、名称(Name),默认空字符串
                string settleCurrId = string.Empty;    // 客户主键Id
                string settleCurrNumber = string.Empty; // 客户编码
                string settleCurrName = string.Empty;   // 客户名称
                string settleCurrSOCIALCRECODE = string.Empty;//统一社会信用代码 绑定实体属性 

                // 3. 判空处理(避免字段为空时出现空引用异常)
                if (objt != null)
                {
                    // 分别给三个变量赋值,不覆盖,一一对应
                    settleCurrId = objt["Id"].ToString();
                    settleCurrNumber = objt["Number"].ToString();
                    settleCurrName = objt["Name"].ToString();
                    settleCurrSOCIALCRECODE = objt["SOCIALCRECODE"].ToString();//销售订单客户要引用属性,
                    
                }
                if (settleCurrSOCIALCRECODE!= string.Empty)// 社会统一代码为空,程序会抛出异常
                  {
                    // 4. 赋值到备注字段FNote
                    this.View.Model.SetValue("FNote", "客户名称:" + settleCurrName + "统一社会信用代码:" + settleCurrSOCIALCRECODE);

                    // 5. 刷新界面,确保备注字段值实时显示
                    this.View.UpdateView("FNote"); }
            }
        }
    }
}

优化统一社会信用代码为空程序异常问题

using Kingdee.BOS;
using Kingdee.BOS.Core;
using Kingdee.BOS.Core.Bill.PlugIn;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Core.Metadata.Util;
using Kingdee.BOS.Orm.DataEntity;
using Kingdee.BOS.Util;
using System;
using System.Net;

namespace testtanchuang
{
    [Kingdee.BOS.Util.HotUpdate]
    public class ClassName : AbstractBillPlugIn
    {
        // 重写点击按钮事件
        public override void BarItemClick(BarItemClickEventArgs e)
        {
            base.BarItemClick(e);

            // 仅处理指定按钮点击
            if (e.BarItemKey == "UNW_tbButton")
            {
                // 1. 获取FCustId对应的DynamicObject
                DynamicObject objt = this.View.Model.GetValue("FCustId") as DynamicObject;

                // 2. 定义三个变量,分别存储Id、编码(Number)、名称(Name),默认空字符串
                string settleCurrId = string.Empty;    // 客户主键Id
                string settleCurrNumber = string.Empty; // 客户编码
                string settleCurrName = string.Empty;   // 客户名称
                string settleCurrSOCIALCRECODE = string.Empty;//统一社会信用代码 绑定实体属性 

                // 3. 判空处理(避免字段为空时出现空引用异常)
                if (objt != null)
                {
                    // 用C#原生语法安全赋值,无需ConvertUtils,避免null调用ToString()
                    settleCurrId = objt["Id"]?.ToString() ?? string.Empty;
                    settleCurrNumber = objt["Number"]?.ToString() ?? string.Empty;
                    settleCurrName = objt["Name"]?.ToString() ?? string.Empty;
                    // 核心:替换统一信用代码的赋值,解决null异常且无需额外命名空间
                    settleCurrSOCIALCRECODE = objt["SOCIALCRECODE"]?.ToString() ?? string.Empty;
                }
                if (settleCurrSOCIALCRECODE!= string.Empty)// 社会统一代码是否为空,
                  {
                    // 4. 赋值到备注字段FNote,)
                    this.View.Model.SetValue("FNote", "客户名称:" + settleCurrName + "统一社会信用代码:" + settleCurrSOCIALCRECODE);

                    // 5. 刷新界面,确保备注字段值实时显示
                    this.View.UpdateView("FNote"); }
                else
                {
                    this.View.ShowMessage("客户信用代码为空");
                }
            }
        }
    }
}


Tags: #ERP #云星空 #金蝶云星空 #金蝶ERP

文章评论

站点信息

  • 站点名称:厦门沐智云科技有限公司
  • 站点关键词:金蝶云,云星空,ERP系统,钉钉OA系统
  • 栏目数量6篇文章
  • 标签管理标签云
  • 微信公众号:扫描二维码,关注我们