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

单据保存校验业务日期大于库存的关账日期实现案例

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

单据保存校验业务日期大于库存的关账日期实现案例

【业务需求】

单据保存操作的校验规则中如何设置:

1、新增单据的单据日期大于库存的关账日期


库存类单据标准插件中已预置关账日期的校验,对于非库存单据或者二开单据,系统关账日期在校验规则中无法直接使用,这个需求要写插件实现,组织最大关账日期数据可以调用Kingdee.K3.SCM.App.Core.CommonService服务的GetMaxCloseDateByOrgId方法获得,或者直接从T_STK_CLOSEPROFILE表中读取

select max(FCLOSEDATE) FCLOSEDATE FROM T_STK_CLOSEPROFILE WHERE FCATEGORY = 'STK' and FORGID = xxx


T_STK_CLOSEPROFILE 关账记录表  

FCATEGORY = 'HS': 存货关账  

FCATEGORY = 'STK':库存关账


以处理申请单为例,保存操作配置插件脚本:

import clr
clr.AddReference('System')
clr.AddReference('Kingdee.BOS')
clr.AddReference('Kingdee.BOS.Core')
clr.AddReference('Kingdee.BOS.ServiceHelper')

from System import * 
from System import StringComparison
from Kingdee.BOS.Core import *
from Kingdee.BOS.Core.Metadata.EntityElement import *
from Kingdee.BOS.Core.Validation import *
from Kingdee.BOS.Log import Logger
from Kingdee.BOS.ServiceHelper import * 

def OnAddValidators(e):
    validator = StockOrgCloseDateValidator()
    validator.AlwaysValidate = True
    validator.EntityKey = "FBillHead"
    e.Validators.Add(validator)
                
class StockOrgCloseDateValidator(AbstractValidator):
    def Validate(self, dataEntities, validateContext, ctx):
        if len(dataEntities) == 0:
            return
            
        for bill in dataEntities:
            targetOrgId = b

单据保存校验业务日期大于库存的关账日期实现案例

【业务需求】单据保存操作的校验规则中如何设置:1、新增单据的单据日期大于库存的关账日期库存类单据标准插件中已预置关账日期的校验,对...
点击下载文档文档为doc格式

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

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