Python插件设置列表基础资料属性“精度”原创
金蝶云社区-Howhy
Howhy
5人赞赏了该文章 1230次浏览 未经作者许可,禁止转载编辑于2020年10月23日 16:59:45

       在单据或者基础资料列表上,如基础资料属性引入的数值,如果超过2级,无法携带精度信息,会在列表上显示很多0,比如在列表上显示12.000000000,这种情况下,可以通过Python插件来进行格式化;

      重写FormatCellValue方法,判断基础资料的key(本示例是FBaseProperty),当这个值不为空时,使用Python的float和round函数进行转换,根据自己的需要显示精度。


#引入clr运行库
import clr
#添加对cloud插件开发的常用组件的引用
clr.AddReference('Kingdee.BOS')
clr.AddReference('Kingdee.BOS.Core')
clr.AddReference('Kingdee.BOS.App')
#导入cloud基础库中的常用实体对象(分命名空间导入,不会递归导入)
from Kingdee.BOS import *
from Kingdee.BOS.Core import *
from Kingdee.BOS.Core.Bill import *
from Kingdee.BOS.Core.DynamicForm.PlugIn import *
from Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel import *
from System import *
from Kingdee.BOS.App.Data import *
#重载cloud插件模型的主菜单按钮点击事件
def FormatCellValue(args):
  #按钮1点击事件  
  if ((args.Header.Key=="FBaseProperty") and (args.FormateValue !='')):    
    args.FormateValue =str(round(float(args.FormateValue),3))

赞 5