电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

凭证业务流程自定义校验器

来源:金蝶云社区作者:金蝶2024-09-221

凭证业务流程自定义校验器

目前凭证常用业务操作都提供了内置的标准校验功能,以确保数据流转的合法性。如凭证提交、复核等都有相关的业务校验。如用户存在个性需求需要二开,本案例供开发人员参考: * 需求目标:凭证分录指定科目(示例科目-1001现金)的分录金额不能超过10000元,否则给出提示不可提交 * 需求分析: * 凭证提交阶段,进行凭证分录相关属性的检查 * 实现思路: * 找到凭证提交服务,分析标准校验器的注册流程 * 关键代码 * *com.kingdee.eas.fi.gl.app.voucher.VoucherServiceFactory* 凭证服务工厂类,找到凭证提交服务(凭证业务服务工厂,其他凭证业务操作如反审核、反过账等也可从此处查找) * *com.kingdee.eas.fi.gl.app.voucher.VoucherServiceFactory#getSubmitVoucherService* 获取凭证提交服务,标准凭证(冲销凭证、自动分摊凭证等不属于标准凭证)提交返回类型为*com.kingdee.eas.fi.gl.app.voucher.SubmitStandradVoucherService*, 该服务实现了*com.kingdee.eas.fi.gl.app.voucher.ISubmitVoucherService#submitVoucher* 方法,分析关键步骤 * *com.kingdee.eas.fi.gl.app.voucher.AbstractSubmitBaseVoucherService#initVoucherValidator* 初始化凭证校验器 * *com.kingdee.eas.fi.gl.app.voucher.SubmitStandradVoucherService#initVoucherValidator* 初始化凭证提交校验器,标准代码内置了凭证头、分录、分录辅助账3层数据校验,并提供了从数据库中获取配置的校验器,这种模式是给二开或关联模块提供的开发入口 * *com.kingdee.eas.fi.gl.validator.VoucherValidatorFactory#getVoucherValidator(ctx, this.getClass().getName(), validator)* 参数2指定了调用服务的全限定类名*com.kingdee.eas.fi.gl.app.voucher.SubmitStandradVoucherService* * *com.kingdee.eas.fi.gl.validator.VoucherValidatorFactory#queyValidatorCollection* 数据库查询,指定了校验器的调用者为服务调用的全限定类名,通过Validator实体发起查询,通过*com.kingdee.eas.fi.gl.validator.AbstractValidatorInfo#getBOSType*定位注册表实体的BOSType为 8B863EF3 * *com.kingdee.eas.fi.gl.validator.VoucherValidatorFactory#populateValidatorCollection* 对扩展的校验器基于注册表的校验类型进行分类,区分校验部位: * *com.kingdee.eas.fi.gl.validator.IVoucherBaseValidator* 凭证头 * *com.kingdee.eas.fi.gl.validator.IVoucherEntryValidator* 分录 * *com.kingdee.eas.fi.gl.validator.IVoucherAssistRecordValidator* 辅助账 * *com.kingdee.eas.fi.gl.app.voucher.AbstractSubmitBaseVoucherService#validatorVoucher* 校验凭证,针对凭证头、分录、辅助账分别进行校验 * 通过上一步骤分析后即可注册一个校验器,进行测试验证 * 校验器注册到分录级别,作用于凭证提交,注册表脚本如下: * *insert into T_gl_validator(FID, FCallClassName, FValidatorInterface, FValidatorClassName) values(newBosID('8B863EF

凭证业务流程自定义校验器

目前凭证常用业务操作都提供了内置的标准校验功能,以确保数据流转的合法性。如凭证提交、复核等都有相关的业务校验。如用户存在个性需求需...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

已经是第一篇
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信