金蝶云星空自定义校验器和使用

文章目录

金蝶云星空自定义校验器和使用

1、创建类,并继承抽象接口

csharp 复制代码
using Kingdee.BOS.Core;
using Kingdee.BOS.Core.Validation;
using System;

namespace mm.K3.SCM.App.Service.PlugIn.SC.Validator
{
    public class AfterOrderCheckOtherBillValidator : AbstractValidator
    {
         
    }
}

2、重写抽象方法,对指定的数据进行校验

csharp 复制代码
public override void Validate(ExtendedDataEntity[] dataEntities, ValidateContext validateContext, Kingdee.BOS.Context ctx)
        {
            throw new NotImplementedException();
            foreach (ExtendedDataEntity dyn in dataEntities)
            {
                string billNo = dyn["BillNo"] + "";
                long fid = Convert.ToInt64(dyn["Id"]);//单FID
                //异常信息
                string _errorMsg = string.Empty;
                #region
                //逻辑处理,不符合条件就把异常信息汇总到 _errorMsg
                #endregion

                errorLable:
                if (!string.IsNullOrEmpty(_errorMsg))
                {
                    string titleInfo = string.Format("售后单-反审核");
                    ValidationErrorInfo errorInfo = new ValidationErrorInfo(string.Empty, fid.ToString(), dyn.DataEntityIndex, dyn.RowIndex
                       , fid.ToString(),
                       _errorMsg, titleInfo, ErrorLevel.Error);
                    validateContext.AddError(dyn, errorInfo);
                }
            }
        }

3、服务端操作插件注册校验器

csharp 复制代码
using Kingdee.BOS.Core.DynamicForm.PlugIn;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Util;
using mm.K3.SCM.App.Service.PlugIn.SC.Validator;
using System.ComponentModel;

namespace mm.K3.SCM.App.Service.PlugIn.SC
{
    [Description("售后单-反审核"), HotUpdate]
    public class AfterOrderUnAudit : AbstractOperationServicePlugIn
    {
        public override void OnAddValidators(AddValidatorsEventArgs e)
        {
            AfterOrderCheckOtherBillValidator validator = new AfterOrderCheckOtherBillValidator()
            {
                AlwaysValidate = true,
                EntityKey = "FBillHead"
            };
            e.Validators.Add(validator);
        }
    }
}

4、验证校验器

相关推荐
Metaphor69211 分钟前
Java 读取或删除 Excel 文件文档属性:Spire.XLS for Java 实用指南
经验分享
蒙奇D索大20 分钟前
【数据结构】考研408 | 红黑树收官与B树启航:删除策略与多路平衡解析
数据结构·笔记·b树·考研·改行学it
YJlio39 分钟前
Active Directory 工具学习笔记(10.11):AdRestore 实战脚本与命令速查——从事故回滚到合规留痕
java·笔记·学习
2501_9307077843 分钟前
如何使用C#代码将多张图片整合为一个PDF文档
开发语言·pdf·c#
whale fall1 小时前
【雅思】王陆语料库11.3
笔记·学习
赵庆明老师1 小时前
NET 10 中DLL,并发布到NuGet
服务器·c#·.net
阿星AI工作室1 小时前
3个方法把gemini3做的应用部署成网站!
经验分享
金海境科技1 小时前
【服务器数据恢复】误操作删除HP ProLiant DL380配置导致教育机构数据丢失数据恢复案例 - 金海境科技
经验分享
d111111111d1 小时前
什么是野指针,在STM32中如何避免野指针问题
笔记·stm32·单片机·嵌入式硬件·学习
yudas1 小时前
pcie笔记
笔记