计划运算向导添加运算校验的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实现方案
本文2024-09-23 03:14:54发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-157641.html