计划运算向导添加运算校验的python实现方案

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

计划运算向导添加运算校验的python实现方案

【应用场景】

客户应用场景需要在在计划运算时,校验特定数据完整性,未通过校验不允许进行计划运算。


【注意事项】

计划运算前标准产品已经有较完善的数据校验,本方案示例提供的解决方案主要用于自定义数据校验规则。


【案例演示】

 本示例实现是校验计划运算向导界面所选单据优先级必须大于0才能运算,具体场景请参照变通使用。


【实现步骤】

<1>BOSIDE扩展计划运算向导,添加表单插件,用pythone实现

 

<2>上一步pythone示例源码,请留意注释部分,以适应实际场景需求时变通使用

import clr

clr.AddReference('System')

clr.AddReference('Kingdee.BOS.Core')

from System import*

from Kingdee.BOS.Core.DynamicForm import *


def ButtonClick(e):

     #this.View.ShowMessage(e.Key.ToUpperInvariant())

     if e.Key.ToUpperInvariant() == 'FNEXT' or  e.Key.ToUpperInvariant() == 'FBTNDIRECALC':

         rows=this.Model.GetEntryRowCount("FEntity"); #获取单据体行数

         for i in range(rows):

             a = this.Model.GetValue("FPriority",i) #a = str(this.Model.GetValue("FDemandDate",i))

             if a<=0: #if a=='None':

                 this.View.ShowMessage('优先级须大于0') #this.View.ShowMessage('需求日期不能为空')

                 e.Cancel = True

                 break



【功能验证】

<1>登录业务站点,打开计划运算向导,选择任意需求单据,若存在需求优先级为0的情况,则点击下一步或直接运算时,系统会提示“优先级须大于0”且取消当前事件继续发展,达成校验目的。




计划运算向导添加运算校验的python实现方案

【应用场景】客户应用场景需要在在计划运算时,校验特定数据完整性,未通过校验不允许进行计划运算。【注意事项】计划运算前标准产品已经有...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息